java8的list相同的保留一个去重复
1、基础类型的包装对象,直接用
List<String> list=Arrays.asList("a","b","c","a");
List<String> distinct=list.stream().distinct().collect(Collectors.toList());
distinct.stream().forEach(s->System.out.print(s));
2、非基础类型包装对象,使用lombok的@Data,或者重写equals和hashcode方法
3、java8的写法
return planInfoVOList.stream().collect(
Collectors.collectingAndThen(
Collectors.toCollection(
()->new TreeSet<Person>(
Comparator.comparing(Person::getId)
)
)
,ArrayList::new)
);