Java 基础学习总结(206)—— 比较两个 List 的差异

方式一

  1. 将两个 List 转换为 Stream 类型;

  2. 调用 Stream 的 filter 方法,将不同的对象过滤出来;

  3. 将过滤出的不同的对象转换为 List 类型。

List<String> list1 = Arrays.asList("A", "B", "C", "D");
List<String> list2 = Arrays.asList("B", "C", "E", "F", "A", "D");
List<String> diff = list1.stream().filter(item -> !list2.contains(item)).collect(Collectors.toList());
List<String> diff1 = list2.stream().filter(item -> !list1.contains(item)).collect(Collectors.toList());
diff.addAll(diff1);

diff.forEach(x -> System.out.println(x));

上述代码中,将两个 List 类型的对象 list1 和 list2 转换为 Stream 类型,并调用 filter 方法筛选出不同的对象。最后通过 collect 方法将不同的对象转换为 List 类型,并输出结果。

方式二

List<String> list1 = Arrays.asList("apple", "banana", "orange", "pear

猜你喜欢

转载自blog.csdn.net/u012562943/article/details/132262759