// 创建第一个集合
List<Integer> list1 = new ArrayList<>();
list1.add(1);
list1.add(2);
list1.add(3);
// 创建第二个集合
List<Integer> list2 = new ArrayList<>();
list2.add(2);
list2.add(4);
list2.add(5);
// 将第一个集合转换为 HashSet
Set<Integer> set1 = new HashSet<>(list1);
// 将第二个集合转换为 HashSet
Set<Integer> set2 = new HashSet<>(list2);
// 计算差集并输出结果
set1.removeAll(set2);
System.out.println("1相对于2差集为:" + set1);
结果:
?1相对于2差集为:[1, 3]
而2相对于1差集为:
// 创建第一个集合
List<Integer> list1 = new ArrayList<>();
list1.add(1);
list1.add(2);
list1.add(3);
// 创建第二个集合
List<Integer> list2 = new ArrayList<>();
list2.add(2);
list2.add(4);
list2.add(5);
// 将第一个集合转换为 HashSet
Set<Integer> set1 = new HashSet<>(list1);
// 将第二个集合转换为 HashSet
Set<Integer> set2 = new HashSet<>(list2);
// 计算差集并输出结果
// set1.removeAll(set2);
// System.out.println("1相对于2差集为:" + set1);
set2.removeAll(set1);
System.out.println("2相对于1差集为:" + set2);
2相对于1差集为:[4, 5]
而交集则如下代码:
public static void main(String[] args) {
// 创建第一个集合
List<Integer> list1 = new ArrayList<>();
list1.add(1);
list1.add(2);
list1.add(3);
// 创建第二个集合
List<Integer> list2 = new ArrayList<>();
list2.add(2);
list2.add(4);
list2.add(5);
// 将第一个集合转换为 HashSet
Set<Integer> set1 = new HashSet<>(list1);
// 将第二个集合转换为 HashSet
Set<Integer> set2 = new HashSet<>(list2);
// 计算差集并输出结果
// set1.removeAll(set2);
// System.out.println("1相对于2差集为:" + set1);
// set2.removeAll(set1);
// System.out.println("2相对于1差集为:" + set2);
Set<Integer> set3 = new HashSet<>(list1);
set3.retainAll(set2);
System.out.println("1和2交集为:" + set3);
}
结果:
1和2交集为:[2]