并集
list1.addAll(list2);
交集
list1.retainAll(list2);
差集
注意
若是用list1Copy = list1 在list1做交集后,list1Copy的值也会变化,只用= 是跟list1指向同一个值
list1.removeAll(list2);
import java.util.ArrayList;
import java.util.List;
public class t {
public static void main(String[] args) {
List list1 = new ArrayList<>();
list1.add(1);
list1.add(2);
list1.add(3);
List list2 = new ArrayList<>();
list2.add(1);
list2.add(4);
List list1Copy = new ArrayList<>();
list1Copy.addAll(list1); // 注意 若是用list1Copy = list1 在list1做交集后,list1Copy的值也会变化,只用= 是跟list1指向同一个值
// 交集
list1.retainAll(list2);
System.out.println(list1); //[1] 所以交集是list
System.out.println(list2);// [1, 4]
if(list1 != null){
System.out.println("有交集");
}
if(list1Copy.containsAll(list1)){
System.out.println(222);
}
}
}
import java.util.ArrayList;
import java.util.List;
public class t {
public static void main(String[] args) {
List list1 = new ArrayList<>();
list1.add(1);
list1.add(2);
list1.add(3);
List list2 = new ArrayList<>();
list2.add(1);
list2.add(2);
List list3 = new ArrayList<>();
list3.add(1);
list3.add(4);
if(list1.containsAll(list2)){
System.out.println("list1包含全部的list2");
}
if(!list1.containsAll(list3)){
System.out.println("list1没有包含全部的list3");
}
}
}