java stream 去重
时间: 2023-10-13 22:56:16 浏览: 106
Java中对List去重 Stream去重的解决方法
在Java中,可以使用流(Stream)来对集合进行去重操作。下面是一种常见的方式:
```java
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 4, 5, 5, 6, 6);
List<Integer> distinctNumbers = numbers.stream()
.distinct()
.collect(Collectors.toList());
System.out.println(distinctNumbers);
```
上述代码首先创建了一个包含重复元素的列表 `numbers`。然后,通过调用 `stream()` 方法将其转换为流。接着,使用 `distinct()` 方法对流进行去重操作。最后,使用 `collect()` 方法将结果收集到一个新的列表中。
运行以上代码,输出结果为 `[1, 2, 3, 4, 5, 6]`,即去重后的列表。
值得注意的是,`distinct()` 方法依赖于对象的 `equals()` 方法来判断元素是否重复。如果要去重的元素是自定义对象,需要确保正确实现了 `equals()` 方法。
阅读全文