java 过滤list不重复对象数据
时间: 2023-09-09 13:14:34 浏览: 99
Java判断List中有无重复元素的方法
5星 · 资源好评率100%
可以使用Java 8的Stream API来过滤List中不重复的对象数据。假设有一个名为Person的类,其中包含id和name两个属性,现在需要过滤List<Person>中不重复的Person对象数据,可以这样实现:
```java
List<Person> personList = ... // 原始List
List<Person> distinctList = personList.stream()
.collect(Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(Person::getId))),
ArrayList::new
));
```
上述代码中,使用Stream的collect方法进行聚合操作,其中Collectors.toCollection方法接收一个Supplier参数,返回一个新的集合对象(这里使用TreeSet来保证Person的id不重复),然后将聚合结果转换为ArrayList对象返回。这样就可以得到一个不含重复Person对象的List了。
阅读全文