美文网首页
Java list 去重

Java list 去重

作者: _浅墨_ | 来源:发表于2021-04-20 16:13 被阅读0次
    1. 去除List中重复的 String
    List unique = list.stream().distinct().collect(Collectors.toList());
    
    1. 去除List中重复的对象

    Person 对象:

    public class Person {
        private String id;
        private String name;
        private String city;
    }
    

    根据name去重:

    List<Person> unique = persons.stream().collect(
                Collectors.collectingAndThen(
                        Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(Person::getName))), ArrayList::new)
    );
    

    根据name, city两个属性去重:

    List<Person> unique = persons.stream().collect(
               Collectors. collectingAndThen(
                        Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(o -> o.getName() + ";" + o.getCity()))), ArrayList::new)
    );
    

    相关文章

      网友评论

          本文标题:Java list 去重

          本文链接:https://www.haomeiwen.com/subject/buunlltx.html