• TreeMap排序的使用


        /**
         * @param  userIdList  用户id的集合
         * @throws ActiveRecordException 
         * @return  返回一个最少的任务数的用户ID
         */
        public String  getLeastTask( List<Record> userIdList) throws ActiveRecordException {
            String     userId =null;
            // 定义一个Map 
            Map<String ,Integer>  map = Maps.newTreeMap();
            // 获取用户的ID   便利
            for (int i = 0; i < userIdList.size(); i++) {
                userId=userIdList.get(i).getStr("userId");
                // 查询里面最少任务的人
                Record UserTaskCount=this.getUserTaskCountList(userId);
                // 获取用户的id
                String user= UserTaskCount.getStr("userId");
                //获取用户的任务的计数
                int taskCount=UserTaskCount.getLong("num").intValue();
                map.put(user,taskCount);
            }
             //将Map转为List ,进行排序
            List<Map.Entry<String, Integer>> list = new ArrayList<>(map.entrySet());
            Collections.sort(list,((o1, o2) -> o2.getValue().compareTo(o1.getValue())));
            // 最少人员的userId
            String mixUserId=list.get(list.size()-1).getKey();
            return mixUserId;
            
        }
    //测试
        public static void main(String[] args) {
            
                Map<String,Integer> map = Maps.newTreeMap();
                map.put("sssss",-111111111);
                map.put("ss",-111111111);
                map.put("yy",0);
                map.put("lx",5);
                map.put("fyx",2);
                map.put("ztt",3);
                map.put("zzy",10);
                List<Map.Entry<String,Integer>> list = new ArrayList<>(map.entrySet());
    
                Collections.sort(list,((o1, o2) -> o2.getValue().compareTo(o1.getValue())));
    
                System.out.println(list.get(list.size()-1).getValue());
    
                System.out.println(list.get(list.size()-1).getKey());
    
    
            
        }
  • 相关阅读:
    第一次练习总结
    第一次上机总结
    写在程序组干活之前
    虚拟机Centos7安装Mysql
    第一章 开发体验
    如何优雅的移植JavaScript组件到Blazor
    Asp.net core中RedisMQ的简单应用
    docker容器安装mysql
    Centos 8安装Docker
    c# 定时启动一个操作、任务(版本2)
  • 原文地址:https://www.cnblogs.com/xiaoniuniu886/p/9621135.html
Copyright © 2020-2023  润新知