Java Stream 去重對象


單屬性去重
List<ClockPointConfig> unique1 = clockPointConfigs.stream().collect(
Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(o->o.getPointName()))),
ArrayList::new));
多屬性去重
List<ClockPointConfig> unique1 = clockPointConfigs.stream().collect(
Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(o->o.getPointName() + ";" + o.getNoteDescribe()))),
ArrayList::new));

本地調試:把 ; 改成 , 也是可以的


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM