1、包含: boolean containsAll(Collection<?> c);
public static void main(String[] args) {
List<String> list1 = UtilMisc.toList("1","2","3","4","5","6","7","8","9");
List<String> list2 = UtilMisc.toList("1","2","3","4","0");
List<String> list3 = UtilMisc.toList("1","2","3","4");
System.out.println("list1 是否完全包含list2 :"+ list1.containsAll(list2));
System.out.println("list1 是否完全包含list3 :"+ list1.containsAll(list3));
System.out.println("list1:" + list1);
System.out.println("list2:" + list2);
System.out.println("list3:" + list3);
}
list1 是否完全包含list2 :false
list1 是否完全包含list3 :true
list1:[1, 2, 3, 4, 5, 6, 7, 8, 9]
list2:[1, 2, 3, 4, 0]
list3:[1, 2, 3, 4]
2、交集: boolean retainAll(Collection<?> c);
- 如果 调用list 中删除了 元素则返回 true。
- 该方法从 list 中 删除了不存在于collection中的元素。
- 如果list包含 null 元素,那么指定collection不允许null元素,否则抛出 NullPointerException 。
public static void main(String[] args) {
List<String> list1 = UtilMisc.toList("1","2","3","4","5","6","7","8","9");
List<String> list2 = UtilMisc.toList("1","2","3","4","0");
List<String> list3 = UtilMisc.toList("1","2","3","4","5","6","7","8","9");
List<String> list4 = UtilMisc.toList("10","11","12","13","14");
// 我们传入了数组 list2 作为 retainAll() 方法的参数。该方法从 list1 中 删除了不存在于 list2 的元素。如果 list1 中删除了元素则返回 true。
System.out.println("list1 与 list2 是否有交集:"+list1.retainAll(list2));
// 我们传入了数组 list3 作为 retainAll() 方法的参数。该方法从 list4 中 删除了不存在于 list3 的元素。如果 list4 中删除了元素则返回 true。
System.out.println("list4 与 list3 是否有交集:"+list4.retainAll(list3));
System.out.println("list1:" + list1);
System.out.println("list2:" + list2);
System.out.println("list3:" + list3);
System.out.println("list4:" + list4);
}
list1 与 list2 是否有交集:true
list4 与 list3 是否有交集:true
list1:[1, 2, 3, 4]
list2:[1, 2, 3, 4, 0]
list3:[1, 2, 3, 4, 5, 6, 7, 8, 9]
list4:[]
3、差集: boolean removeAll(Collection<?> c);
public static void main(String[] args) {
List<String> list1 = UtilMisc.toList("1","2","3","4","5","6","7","8","9");
List<String> list2 = UtilMisc.toList("1","2","3","4","0");
System.out.println(list1.removeAll(list2));
System.out.println("list1:" + list1);
System.out.println("list2:" + list2);
}
true
list1:[5, 6, 7, 8, 9]
list2:[1, 2, 3, 4, 0]