java比较两个集合,并排除已经比较相同的数据
时间: 2024-03-21 16:37:44 浏览: 51
我们可以使用Java中的Collection类的retainAll()方法来获取两个集合的交集,然后再使用Collection类的removeAll()方法来移除已经比较相同的数据。
例如,假设我们有两个List集合list1和list2,我们可以使用以下代码比较这两个集合并排除已经比较相同的数据:
```
List<String> list1 = new ArrayList<>();
list1.add("A");
list1.add("B");
list1.add("C");
List<String> list2 = new ArrayList<>();
list2.add("B");
list2.add("C");
list2.add("D");
List<String> intersection = new ArrayList<>(list1);
intersection.retainAll(list2); // 获取两个集合的交集
list1.removeAll(intersection); // 移除已经比较相同的数据
list2.removeAll(intersection); // 移除已经比较相同的数据
System.out.println(list1); // 输出 [A]
System.out.println(list2); // 输出 [D]
```
在上面的代码中,我们首先使用ArrayList类分别创建了list1和list2两个集合,然后使用retainAll()方法获取了这两个集合的交集,并将结果保存到了一个新的ArrayList集合intersection中。接着,我们分别使用removeAll()方法从list1和list2中移除已经比较相同的数据,最后输出list1和list2的结果。
阅读全文