JAVA Stream去重代码写法
如果需要对一个list进行去重,最简单的写法是
Listobjects = new ArrayList<>(); objects.addAll(documentSearchList); // objects.addAll(documentSearchTagsList); return objects.stream().distinct().collect(Collectors.toList());
重点就是distinct方法,需要成员实现hashCode和equals方法
还有一种更变态的写法
private staticPredicate distinctByKey(Function<? super T, ?> keyExtractor) { Set
studentList = studentList.stream().filter(distinctByKey(Student::getName)).collect(Collectors.toList())