`

Map按value值进行排序

    博客分类:
  • java
 
阅读更多

/**
     * 获得门诊部迟到最多的前10个科室
     * @return
     */
    public String getDepartmentCount(){
        List<OutpDoctorLoginRecVO> list = getOutpDoctorLoginRec();
        Map<String, Integer> resultMap1 =  new TreeMap<String, Integer>();
        if(list!=null){
            for(OutpDoctorLoginRecVO vo: list){
                if(vo.getAttendanceType()==3){
                    if(resultMap1.containsKey(vo.getLoginDept())){
                        Integer value = resultMap1.get(vo.getLoginDept());
                        if(value==null){
                            value=0;
                        }
                        resultMap1.put(vo.getLoginDept(), value+1);
                    }else{
                        resultMap1.put(vo.getLoginDept(), 1);
                    }
                }
            }
        }

//开始
         List<Map.Entry<String, Integer>> infoIds = new ArrayList<Map.Entry<String, Integer>>(
                 resultMap1.entrySet());
   
         Collections.sort(infoIds, new Comparator<Map.Entry<String, Integer>>() {
             public int compare(Map.Entry<String, Integer> o1,
             Map.Entry<String, Integer> o2) {
             return (o2.getValue() - o1.getValue());
             }
         });

//结束 
        StringBuffer sb = new StringBuffer();
        sb.append("{");
        if(infoIds!=null){
            int size = infoIds.size();
            if(infoIds.size()>10){
                size = 10;
            }
            for(int i=0;i<infoIds.size();i++){
                Map.Entry<String, Integer> entry = infoIds.get(i);
                if(i<infoIds.size()-1){
                    sb.append("\""+entry.getKey()+"\":"+entry.getValue()+",");
                }
                else{
                    sb.append("\""+entry.getKey()+"\":"+entry.getValue());
                }
                       
            }
        }
        sb.append("}");
        return sb.toString();
    }

分享到:
评论

相关推荐

    对Map的key和value进行排序

    对Map的key和value进行排序 对Map的key和value进行排序是Java编程中非常重要的一部分。Map是Java集合框架中的一种数据结构,用于存储键值对。然而,在实际应用中,我们经常需要对Map中的key或value进行排序,以满足...

    对map里面的value进行排序

    然而,有时我们需要对Map中的值进行排序,例如按照value的大小进行升序或降序排列。这篇博客"对map里面的value进行排序"探讨的就是如何实现这一需求。 首先,我们了解Map接口的基本概念。Map接口不直接支持排序,...

    对Map按key和value分别排序

    "对 Map 按 key 和 value 分别排序" 摘要:本文主要介绍了 Map 按 key 和 value 分别排序的方法,包括使用 TreeMap 的 key 排序和 value 排序两种方式。 Map 按 key 排序 Map 是键值对的集合接口,它的实现类主要...

    Java Map按键排序和按值排序

    Java Map按键排序和按值排序 Java Map按键排序和按值排序是Java编程语言中常用的数据结构之一。Map是一种键值对的集合,它可以按照键或值进行排序。下面,我们将详细地介绍Java Map的按键排序和按值排序。 按键...

    java的Map集合中按value值进行排序输出的实例代码

    这个实例代码展示了如何在Java中实现按value值对Map集合进行排序,这对于需要根据value值进行数据分析或其他处理的场景非常有用。请注意,这种方法返回的是一个已排序的Map.Entry数组,而不是一个新的Map,因此如果...

    Java Map 按值排序

    然而,在某些场景下,我们可能需要将Map中的元素按照值(value)进行排序。本文将详细介绍如何在Java中实现Map按值排序的几种方法。 1. 使用TreeMap TreeMap是Java中实现Map接口的一个类,它内部使用红黑树数据结构...

    浅谈Java之Map 按值排序 (Map sort by value)

    这里我们将探讨如何在Java中实现按值排序的Map,特别关注“按值排序”这一需求。 首先,标准的SortedMap接口是根据键(key)进行排序的,例如TreeMap就是一种按键升序排序的实现。因此,如果想按值排序,我们需要...

    JCF(List、Set、Map)学习,实现了<key,value>按value排序噢

    标题中提到的“JCF(List、Set、Map)学习,实现了,value&gt;按value排序”是一个关键点,我们将深入探讨这个话题。 首先,让我们了解List、Set和Map的区别。List是有序的集合,允许重复元素,并且可以保持插入顺序;Set...

    Java Map 按照Value排序的实现方法

    当我们需要按照Value(值)对Map进行排序时,通常会采用特定的方法。以下是关于Java Map按照Value排序的实现方法的详细说明: 1. **HashMap**: - HashMap是基于哈希表实现的,它不保证元素的顺序,插入顺序和遍历...

    map实现按value升序排序

    总结来说,通过自定义`Comparator`并结合`Arrays.sort()`方法,我们可以对`Map`进行定制化的排序,无论是按值升序排序还是按键排序。但要注意,这种方法只是返回了一个排序后的`Entry`数组,并未改变原`Map`的顺序。...

    Hashmap 通过对VALUE排序 源代码

    在博文“HashMap通过对VALUE排序 源代码”中,作者可能详细介绍了如何实现上述方法,尤其是自定义Comparator来对HashMap的值进行排序。遗憾的是,由于没有提供具体的博客内容,我们无法给出更详细的源代码分析。不过...

    Android 对Map按key和value分别排序的实例

    当需要对Map中的数据进行排序时,通常有两种情况:按key排序和按value排序。本文将详细介绍如何在Android环境下对Map进行这两种排序。 首先,我们来讨论按key排序。TreeMap是一个基于红黑树实现的Map,它可以根据...

    Java中对list map根据map某个key值进行排序的方法

    Java中对List&lt;Map&gt;根据Map某个key值进行排序的方法 在 Java 中,排序是一个非常常见的操作,特别是在处理 List 集合时。当我们需要根据 Map 中的某个 key 值对 List 集合进行排序时,需要使用Comparator接口来实现...

    java8 stream 操作map根据key或者value排序的实现

    Java8 Stream 操作 Map 根据 Key 或 Value 排序的实现 Java8 中的 Stream 操作为开发者提供了简洁高效的数据处理方式,今天我们将介绍如何使用 Java8 Stream 操作 Map 根据 Key 或 Value 排序的实现。 Map 根据 ...

    对于java map类排序

    然而,有时候我们可能需要对Map按照键(key)或者值(value)进行排序。这里,我们讨论的是“对于Java Map类排序”,特别是通过键进行排序。 在给定的代码中,有一个名为`mapSortByKey`的方法,该方法接收一个未...

    Java Map 按key排序和按Value排序的实现方法

    - 当需要根据value进行排序时,由于Map本身并不直接支持value排序,我们需要使用其他方法。一种常见做法是先将Map的entrySet转换为List,然后使用`Collections.sort()`方法,传入一个Comparator来按value排序。 - ...

    List<Map>中英文排序

    支持一个List&lt;Map&gt;按照MAP中的一个或者多个Key的value值的中英文来排序,自动识别字符和数字(包括[a-zA-z]?[0-9]*)排序

    ordered-map:按值排序的HashMap

    这样,当我们插入`ByValue`对象到`BTreeMap`时,它们将按照内部`value`字段的值进行排序。 在实际应用中,`ordered-map`可以用于各种场景,如日志记录(按时间戳排序)、统计分析(按数量或频率排序)或者任何需要...

    STL_map初始化和排序

    在STL中,`map`是一个关联容器,它存储键值对(key-value pairs),其中每个键都是唯一的,并且通过键进行排序。`map`的实现通常基于红黑树,这保证了其在插入、删除和查找操作上的平均时间复杂度为O(log n)。 在...

Global site tag (gtag.js) - Google Analytics