java8取出两个集合的交集
时间: 2023-12-05 19:30:04 浏览: 78
你可以使用Java 8中的stream API来取出两个集合的交集,这里给出一个示例代码:
```java
List<Integer> list1 = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> list2 = Arrays.asList(3, 4, 5, 6, 7);
List<Integer> intersection = list1.stream()
.filter(list2::contains)
.collect(Collectors.toList());
System.out.println(intersection); // 输出 [3, 4, 5]
```
在这个示例中,我们将两个集合转换为Java中的List对象,并使用Java 8中的stream API来遍历第一个集合list1,然后使用filter方法过滤出list2中包含的元素,最后使用collect方法将结果收集到一个新的List对象中。
相关问题
Java取出两个集合的交集
可以使用 Java 中的 `retainAll` 方法来取出两个集合的交集。这个方法会修改调用它的集合,使其只包含当前集合和指定集合中共有的元素。以下是示例代码:
```java
import java.util.*;
public class IntersectionExample {
public static void main(String[] args) {
List<Integer> list1 = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> list2 = Arrays.asList(4, 5, 6, 7, 8);
Set<Integer> set1 = new HashSet<>(list1);
Set<Integer> set2 = new HashSet<>(list2);
set1.retainAll(set2);
System.out.println("Intersection: " + set1);
}
}
```
上面的代码展示了如何使用 `retainAll` 方法来取出两个集合的交集。首先,我们将两个列表转换为集合,然后使用 `retainAll` 方法来修改 `set1`,以使其只包含 `set1` 和 `set2` 中共有的元素。最后,我们打印出结果集合。
list取出重复数据
回答: 要从一个List中取出重复的数据,可以使用Java中的集合操作。可以使用两种方法来实现这个功能。第一种方法是使用两个for循环来遍历两个List,然后使用contains方法来判断是否存在重复的元素,如果存在则将其添加到一个新的List中作为交集。第二种方法是使用Java 8中的Stream API,可以使用stream()方法将List转换为流,然后使用collect()方法和groupingBy()方法来对元素进行分组,最后使用counting()方法来计算每个元素的数量,这样就可以得到重复的元素。\[1\]\[2\]另外,如果你已经有一个List,并且想要找出其中的重复元素,你可以使用Arrays.asList()方法将数组转换为List,然后使用stream()方法和collect()方法来实现。\[3\]
#### 引用[.reference_title]
- *1* [两个list取出重复数据](https://blog.csdn.net/shijing266/article/details/48368485)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* *3* [Java根据list中对象的属性找出list重复数据或去除list重复数据](https://blog.csdn.net/weixin_31727797/article/details/115039466)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文