java 两个数组对比,具体显示哪个数组多什么还是少什么,或是变化了什么
时间: 2023-12-14 12:36:47 浏览: 29
你可以尝试以下代码来比较两个数组并显示差异:
```java
public class ArrayComparator {
public static void main(String[] args) {
int[] array1 = {1, 2, 3, 4, 5};
int[] array2 = {1, 2, 4, 6};
// 找出相同元素
ArrayList<Integer> commonElements = new ArrayList<>();
for (int i = 0; i < array1.length; i++) {
for (int j = 0; j < array2.length; j++) {
if (array1[i] == array2[j]) {
commonElements.add(array1[i]);
break;
}
}
}
System.out.println("相同元素:" + commonElements);
// 找出array1中不同于array2的元素
ArrayList<Integer> differentElements1 = new ArrayList<>();
for (int i = 0; i < array1.length; i++) {
boolean found = false;
for (int j = 0; j < array2.length; j++) {
if (array1[i] == array2[j]) {
found = true;
break;
}
}
if (!found) {
differentElements1.add(array1[i]);
}
}
System.out.println("array1中不同于array2的元素:" + differentElements1);
// 找出array2中不同于array1的元素
ArrayList<Integer> differentElements2 = new ArrayList<>();
for (int i = 0; i < array2.length; i++) {
boolean found = false;
for (int j = 0; j < array1.length; j++) {
if (array2[i] == array1[j]) {
found = true;
break;
}
}
if (!found) {
differentElements2.add(array2[i]);
}
}
System.out.println("array2中不同于array1的元素:" + differentElements2);
// 比较两个数组的大小
if (array1.length > array2.length) {
System.out.println("array1比array2多" + (array1.length - array2.length) + "个元素");
} else if (array2.length > array1.length) {
System.out.println("array2比array1多" + (array2.length - array1.length) + "个元素");
} else {
System.out.println("两个数组长度相同");
}
}
}
```
这段代码会输出相同的元素、array1中不同于array2的元素、array2中不同于array1的元素以及两个数组的长度差异。你可以根据需要对代码进行修改,以适应你的具体需求。