Java 如何取两个List的交集数据
时间: 2024-03-27 21:41:35 浏览: 54
JAVA获取两个数据量较大的ArrayList的交集、差集以及并集
Java中也可以使用Set集合的交集操作来获取两个List的交集数据。具体实现方法如下:
```java
List<Integer> list1 = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5));
List<Integer> list2 = new ArrayList<>(Arrays.asList(3, 4, 5, 6, 7));
Set<Integer> set1 = new HashSet<>(list1);
Set<Integer> set2 = new HashSet<>(list2);
set1.retainAll(set2);
List<Integer> common = new ArrayList<>(set1);
System.out.println(common);
```
输出结果为:
```
[3, 4, 5]
```
其中,`new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5))`将数组转换为List,`new HashSet<>(list1)`将List转换为Set,`retainAll()`表示求交集,最后再将Set转换为List即可。
阅读全文