Java代码取(差集,并集,交集,交集的补集)

Java代码取(差集,并集,交集,交集的补集)

List<String> listA = new ArrayList<>();
listA.add("1");
listA.add("1");
listA.add("1");
listA.add("2");
listA.add("2");
listA.add("3");
listA.add("3");
List<String> listB = new ArrayList<>();
listB.add("1");
listB.add("3");
listB.add("4");

//差集
List<String> list1 = (List<String>) CollectionUtils.subtract(listA, listB);
List<String> list2 = (List<String>) CollectionUtils.subtract(listB, listA);
//并集
List<String> list3 = (List<String>) CollectionUtils.union(listA, listB);
//交集
List<String> list4 = (List<String>) CollectionUtils.disjunction(listA, listB);
//交集的补集
List<String> list5 = (List<String>) CollectionUtils.intersection(listA, listB);

System.out.println("list1: "+list1.toString());
System.out.println("list2: "+list2.toString());
System.out.println("list3: "+list3.toString());
System.out.println("list4: "+list4.toString());
System.out.println("list5: "+list5.toString());

//输出结果如下
list1: [1, 1, 2, 2, 3]
list2: [4]
list3: [1, 1, 1, 2, 2, 3, 3, 4]
list4: [1, 1, 2, 2, 3, 4]
list5: [1, 3]
原文地址:https://www.cnblogs.com/zfjcool/p/15594444.html