zoukankan      html  css  js  c++  java
  • JAVA中List数组判断是否有重复元数

    JAVA中List数组判断是否有重复元数

    1.使用Set的特性,将List转Set,比较两个集合的size()的大小是否相等
    List<String> strList=new ArrayList<>(Arrays.asList("张三","李四","李四","王五"));
    Set<String> strSet=new HashSet<>(strList);
    if (strList.size() == strSet.size()) {
        System.out.println("没有重复");
    } else {
        System.out.println("重复了,老铁");
    }
    
    2.使用jdk8---Stream的特性
    List<String> strList=new ArrayList<>(Arrays.asList("张三","李四","李四","王五"));
    long count = strList.stream().distinct().count();
    if (strList.size() == count) {
        System.out.println("没有重复");
    } else {
        System.out.println("重复了,老铁");
    }
    
    3.使用Object时判断成员变量是否有重复

    User类:

    @Data
    public class User {
        private Long id;
        private String name;
        private Integer age;
    
        public User(Long id, String name, Integer age) {
            this.id = id;
            this.name = name;
            this.age = age;
        }
    
        public User() {
        }
    }
    

    判断User集合中name是否有重复:

    List<User> users = new ArrayList<User>(){
        {
            add(new User(13131l,"张三",33));
            add(new User(21244l,"李四",23));
            add(new User(31865l,"王五",41));
            add(new User(31231l,"大聪明",25));
            add(new User(31123l,"大智慧",27));
            add(new User(38751l,"张三",30));
        }
    };
    List<String> names = users.stream().map(User::getName).collect(Collectors.toList());
    System.out.println(names.toString());
    //distinct()过滤重复的姓名 count()计算数量
    long count = names.stream().distinct().count();
    System.out.println("去重后的个数:"+count);
    if (names.size() == count){
        System.out.println("没有重复");
    }else {
        System.out.println("重复了,老铁");
    }
    
  • 相关阅读:
    40 宾语从句的连词
    unar解压rar,zip等文件
    Disable beep in WSL terminal on Windows 10 [closed]
    Collins COBUILD Advanced Learner’s Dictionary (Collins COBUILD Dictionaries for Learners)
    中小学语文示范诵读库
    自己打印标准五笔字型教材(86)
    赵元任《施氏食狮史》
    西班牙语学习资源
    为什么“能”?为什么“行”?为什么“好”?答案在这里!
    社会主义好
  • 原文地址:https://www.cnblogs.com/netu/p/14818685.html
Copyright © 2011-2022 走看看