请问java有工具类取两个list的并集吗?

来源:百度知道 编辑:UC知道 时间:2024/09/23 01:20:58
list1与list2内装有不同的信息,但也有相同的信息现在想要得是不同加入,相同只加入一个,请问java不用循环,有这样的工具类吗?
那往set放呢?

好象List的里retainAll可以完成吧,可以保留相同的元素,将不同的删除,你可以试一下,如果这个不是创建一个新的list,是在原有的list上直接修改。

list1.retainAll(list2);

这样处理后,list1就是处理过的。

看成交集了,失败。。。

并集的话直接把两个的数据都放到一个Set集合里就行了
Set set = new HashSet();
set.addAll(list1);
set.addAll(list2);
这样set里保存的数据就是你要的结果

使用java集合(包括但不限于List)类可方便地计算两个集合的交集、并集、差集等,以下是详细代码:
import java.util.HashSet;
import java.util.Set;
public class Test {
public static void main(String[] args) {
Set<Integer> result = new HashSet<Integer>();
Set<Integer> set1 = new HashSet<Integer>(){{
add(1);
add(3);
add(5);
}};
Set<Integer> set2 = new HashSet<Integer>(){{
add(1);
add(2);
add(3);
}};

result.clear();
result.addAll(set1);
r