stream流中根据distubct使用方法
时间: 2024-10-08 07:16:46 浏览: 39
在Java Stream API中,`distinct()`方法用于从流中移除重复的元素。当你有一个包含可能存在重复项的集合,并希望得到其中唯一的元素时,可以使用这个方法。它通常配合`Collectors.toSet()`或者直接返回一个新的Stream来使用。
例如,假设你有一个整数列表并想去除重复的元素:
```java
List<Integer> numbers = Arrays.asList(1, 2, 2, 3, 4, 4, 5);
List<Integer> distinctNumbers = numbers.stream()
.distinct()
.collect(Collectors.toList());
```
现在`distinctNumbers`将只包含[1, 2, 3, 4, 5],因为重复的数字已经被移除了。
如果你需要保持原始流并且不改变原集合,可以这样做:
```java
Stream<Integer> uniqueStream = numbers.stream().distinct();
```
这将创建一个新的、不重复的Stream。
阅读全文