打赏

java 查询list中重复的数据

复制代码
List<Student> testList = new ArrayList<Student>();
List<Student> repeatList = new ArrayList<Student>();//用于存放重复的元素的list

Map<String, Integer> map = new HashMap<>(); 
        for(Student s : testList){
            //1:map.containsKey()   检测key是否重复
            if(map.containsKey(s.getStuName())){
                repeatList.add(s);//获取重复的学生名称
                
                Integer num = map.get(s.getStuName());
                map.put(s.getStuName(), num+1);
            }else{
                map.put(s.getStuName(), 1);
            }


            //2: 这个key是不是存在对应的value(key是否在map中)
//            Integer count = map.get(s.getStuName());//这种写法也可以,异曲同工
//          if (count == null) {
//              map.put(s.getStuName(), 1);
//          } else {
//              map.put(s.getStuName(), (count + 1));
//          }
        }
//        for(Student s : repeatList){
//            System.out.println("相同的元素:" + s.getStuName());
//        }
//        for(Map.Entry<String, Integer> entry : map.entrySet()){
//            System.out.println("学生:" + entry.getKey() + "的名字出现了:" + entry.getValue() + "次");
//        }
    
复制代码

 

posted @   YY2000  阅读(9168)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示