使用 Java 8 的 Stream API 可以轻松获取两个列表的交集。例如,假设我们有两个列表 'list1' 和 'list2',可以使用以下代码获取它们的交集:

List<String> list1 = Arrays.asList('apple', 'banana', 'orange');
List<String> list2 = Arrays.asList('banana', 'orange', 'grape');

List<String> intersection = list1.stream()
        .filter(list2::contains)
        .collect(Collectors.toList());

System.out.println(intersection); // 输出 'banana, orange'

这段代码首先将两个列表转换为 Stream,然后使用 filter 操作符过滤出在 'list2' 中也存在的元素,最后使用 collect 操作符将结果收集到一个新的列表中。

如果你不想创建一个新的列表来存储交集,可以使用 forEach 操作符来遍历交集中的元素:

list1.stream()
        .filter(list2::contains)
        .forEach(System.out::println); // 输出 'banana' 和 'orange'

通过以上代码示例,你可以轻松地使用 Java 8 的 Stream API 获取两个列表的交集,并根据需要选择不同的操作方式。

Java 两个列表获取交集:使用 Stream API 轻松实现

原文地址: https://www.cveoy.top/t/topic/n2s0 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录