比较两个数组是否完全相同案例
程序员文章站
2024-03-16 13:03:04
...
需求
定义一个方法,用于比较两个数组的内容是否相同
思路分析
要完成上述的需求,那么我们也可以去定义一个方法进行实现。
该方法需要完成的功能就是判断两个数组的内容是否相同
两个明确:
1、返回值类型 boolean类型
2、参数列表 2个数据类型的参数
代码实现
注:抽取了一个方法,实现不考虑顺序比较的情况
- 排序方法中,我使用了sort方法和冒泡排序
import java.util.Arrays;
/**
* Created by Intellij IDEA.
*
* @Description: 需求:定义一个方法,用于比较两个数组的内容是否相同
*/
public class IsEquals {
public static void main(String[] args) {
int[] arr01 = {23, 45, 67, 100};
int[] arr02 = {23, 45, 23, 100};
boolean flag = isEqualsArray(arr01, arr02);
//根据返回的flag输出判断结果
if (flag) {
System.out.println("两个数组完全相同!");
} else {
System.out.println("两个数组不同!");
}
}
/**
* 比较方法,判断两个数组是否完全相同
*
* @param arr01 第一个数组
* @param arr02 第二个数组
* @return 返回boolean类型变量
*/
private static boolean isEqualsArray(int[] arr01, int[] arr02) {
//如果不考虑顺序的话,调用sortArray方法,将两个数组先排序,在比较
sortArray(arr01, arr02);
if (arr01.length != arr02.length) {
return false;
}
for (int i = 0; i < arr01.length; i++) {
if (arr01[i] != arr02[i]) {
return false;
}
}
return true;
}
/**
* 对两个数组分别排序后在进行比较
*
* @param arr01 第一个数组
* @param arr02 第二个数组
*/
private static void sortArray(int[] arr01, int[] arr02) {
//使用Arrays的sort方法进行排序
Arrays.sort(arr01);
Arrays.sort(arr02);
//使用冒泡排序
/*for (int i = 0; i < arr01.length - 1; i++) {
for (int j = 0; j < arr01.length - 1 - i; j++) {
if (arr01[j] > arr01[j + 1]) {
int temp = arr01[j];
arr01[j] = arr01[j + 1];
arr01[j + 1] = temp;
}
}
}
for (int i = 0; i < arr02.length - 1; i++) {
for (int j = 0; j < arr02.length - 1 - i; j++) {
if (arr02[j] > arr02[j + 1]) {
int temp = arr02[j];
arr02[j] = arr02[j + 1];
arr02[j + 1] = temp;
}
}
}*/
}
}
上一篇: 使ESXi的VM支持虚拟化
下一篇: 最短路——floyd算法