java stram对三个list取交集

您所在的位置:网站首页 java两个list取交集的方法 java stram对三个list取交集

java stram对三个list取交集

2024-04-14 00:09| 来源: 网络整理| 查看: 265

Java Stream对三个List取交集 简介

在Java中,我们可以使用Stream API来操作集合,其中包括对多个集合进行交集操作。本文将介绍如何使用Java Stream对三个List进行交集操作。

流程

下面是实现这一目标的步骤:

flowchart TD A(创建三个List) --> B(使用Stream获取交集) B --> C(将交集结果转换为List) C --> D(打印交集结果) 代码实现 创建三个List

首先,我们需要创建三个List,分别表示三个集合,我们可以使用Arrays.asList()方法来创建List,并添加一些元素。

List list1 = Arrays.asList("A", "B", "C", "D", "E"); List list2 = Arrays.asList("C", "D", "E", "F", "G"); List list3 = Arrays.asList("E", "F", "G", "H", "I"); 使用Stream获取交集

接下来,我们将使用Stream API来获取三个List的交集。我们可以使用stream()方法将List转换为Stream对象,并使用filter()方法来筛选出交集的元素。

List intersection = list1.stream() .filter(list2::contains) // 筛选出list1和list2的交集元素 .filter(list3::contains) // 筛选出list1、list2和list3的交集元素 .collect(Collectors.toList()); // 将交集结果转换为List 将交集结果转换为List

在上面的代码中,我们使用了collect()方法将交集结果转换为List。Collectors.toList()方法用于将Stream中的元素收集到List中。

打印交集结果

最后,我们可以使用System.out.println()方法打印交集的结果。

System.out.println(intersection);

完整的代码如下所示:

import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; public class Main { public static void main(String[] args) { List list1 = Arrays.asList("A", "B", "C", "D", "E"); List list2 = Arrays.asList("C", "D", "E", "F", "G"); List list3 = Arrays.asList("E", "F", "G", "H", "I"); List intersection = list1.stream() .filter(list2::contains) // 筛选出list1和list2的交集元素 .filter(list3::contains) // 筛选出list1、list2和list3的交集元素 .collect(Collectors.toList()); // 将交集结果转换为List System.out.println(intersection); } } 类图

下面是本文中涉及的类的类图表示:

classDiagram class Main { +main(args: String[]): void } 总结

本文介绍了如何使用Java Stream对三个List进行交集操作。通过创建三个List并使用Stream API,我们可以轻松地获取集合的交集。希望这篇文章能够帮助刚入行的小白理解如何实现这一功能。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3