可以用于 Java多个集合之间合并及元素比较的简单方法
public static void main(String[] args) {
Listlist = new ArrayList<>();
Listlist2 = new ArrayList<>();
list.add("aaa");
list.add("李四");
list.add("赵五");
list2.add("aaa");
list2.add("bbb");
list2.add("ccc");
list.retainAll(list2);//交集 两个集合同时拥有的值,如 a
list.addAll(list2);//并集 合并两个集合的值
list.removeAll(list2);//差集 对应集合没有的值称为差值
Collections.sort(list);
System.out.println(list);
}
去重:使用HashSet的特性就能达到去重的效果
Listlist = new ArrayList<>();
HashSetset = new HashSet<>();
list.add("aaa");
list.add("aaa");
list.add("张三");
set.addAll(list);
System.out.println("list去重后="+set);
方法二 通过是否包含值来比较去重
//创建新集合,如果不包含就添加进去
public static void testList(Listlist, ArrayListarrList) {
for (int i = 0; i < list.size(); i++) {
if (!arrList.contains(list.get(i))) {
arrList.add(list.get(i));
}
}
for (String string : arrList) {
System.out.println(string);
}
得到的结果分别是:
去重:
交集
并集
差集
注意:三者不能同时运用 否则会出现相互被覆盖的问题,测试可以用多个新对象