• Map排序


    小明本学期学习了7门课,分数分别是 语文90 数学 91 地理 88 物理 99 化学 78 生物 60 外语 80,请用java实现以下结果,并打印输出
     1、 把小明本学期的所有成绩按照从高到低排序,并打印输出
     2、 计算小明的所有科目的平均分,保留整数(四舍五入),并打印输出
     3、 计算小明分数排名第2的科目名称和分数排名倒数第2的科目,打印输出科目名称

    Map<String,Integer> map = new HashMap<String, Integer>();
            map.put("语文", 90);
            map.put("数学", 91);
            map.put("地理", 88);
            map.put("物理", 99);
            map.put("化学", 78);
            map.put("生物", 60);
            map.put("外语", 80);
            
            for(Map.Entry<String,Integer> m : map.entrySet()){
                System.out.println(m.toString());
            }
            System.out.println("-----------排序后:---------");
            
            
            List<Map.Entry<String,Integer>> list = new ArrayList<Map.Entry<String,Integer>>(map.entrySet());
            Collections.sort(list,new Comparator<Map.Entry<String,Integer>>(){
                public int compare(Map.Entry<String,Integer> c1,Map.Entry<String,Integer> c2){
                    return c2.getValue().compareTo(c1.getValue());
                }
            });
            
            for(int i=0;i<list.size();i++){
                String obj = list.get(i).toString();
                System.out.println(obj);
            }
            System.out.println("-----------平均分:---------");
            Integer count = 0;
            int n = 0;
            for(Map.Entry<String,Integer> m : map.entrySet()){
                Integer value = m.getValue();
                count = count+value;
                n++;
            }
            System.out.println(new DecimalFormat("#0").format(count/n));
            System.out.println("----------排名顺数第二的科目:----------");
            for(int i=0;i<list.size();i++){
                if(i == 1){
                    Map.Entry<String,Integer> m = list.get(i);
                    System.out.println(m.getKey());
                }
            }
            System.out.println("---------排名倒数第二的科目:-----------");
            for(int i=list.size()-1;i>=0;i--){
                if(i == list.size()-2){
                    Map.Entry<String,Integer> m = list.get(i);
                    System.out.println(m.getKey());
                }
            }
  • 相关阅读:
    vue 解决 打包完iE下空白
    多层josn数据 修改
    vue 初始化data中的数据
    图片查看器(缩放 拖动)
    js 懒加载
    css flex 兼容ios android--商品展示 添加购物车
    领域驱动架构(DDD)建模
    知乎复制文本
    Nlog配置文件
    未能加载文件或程序集“xxx”或它的某一个依赖项。生成此程序集的运行时比当前加载的运行时新,无法加载此程序集
  • 原文地址:https://www.cnblogs.com/xuanzai/p/3666443.html
Copyright © 2020-2023  润新知