`
lxs647
  • 浏览: 523242 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Map 按值排序

 
阅读更多

public static Map sortByValue(Map map) {
        List list = new LinkedList (map.entrySet());
        Collections .sort(list, new Comparator () {

            public int compare(Object o1, Object o2) {
                return ((Comparable ) ((Map .Entry) (o1)).getValue())
                        .compareTo(((Map .Entry) (o2)).getValue());
            }
        });
        Map result = new LinkedHashMap ();

        for (Iterator it = list.iterator(); it.hasNext();) {
            Map .Entry entry = (Map .Entry) it.next();
            result.put(entry.getKey(), entry.getValue());
        }
        return result;
    }

    public static Map sortByValue(Map map, final boolean reverse) {
        List list = new LinkedList (map.entrySet());
        Collections .sort(list, new Comparator () {

            public int compare(Object o1, Object o2) {
                if (reverse) {
                    return -((Comparable ) ((Map .Entry) (o1)).getValue())
                            .compareTo(((Map .Entry) (o2)).getValue());
                }
                return ((Comparable ) ((Map .Entry) (o1)).getValue())
                        .compareTo(((Map .Entry) (o2)).getValue());
            }
        });

        Map result = new LinkedHashMap ();
        for (Iterator it = list.iterator(); it.hasNext();) {
            Map .Entry entry = (Map .Entry) it.next();
            result.put(entry.getKey(), entry.getValue());
        }
        return result;
    }

分享到:
评论

相关推荐

    Java Map 按值排序

    本文将详细介绍如何在Java中实现Map按值排序的几种方法。 1. 使用TreeMap TreeMap是Java中实现Map接口的一个类,它内部使用红黑树数据结构,可以按照键或值自然排序。如果我们要根据值排序,可以在创建TreeMap时...

    Java Map按键排序和按值排序

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

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

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

    Map参数按ASCII码排序

    将map按ASCII码排序,适用于将请求头的参数转为map,map内可再含有map,递归排序,无遗漏。运行demo里main方法即可进行验证。

    对Map的key和value进行排序

    在下面的示例代码中,我们使用TreeMap和Comparator来对Map中的日期格式的值排序。 ```java class SortValueComparator implements Comparator<String> { private Map,Date> map ; public SortValueComparator(Map...

    java实现的map排序

    但是,如果只需要一次排序,之后只进行读取操作,则可以考虑将键值对放入数组或列表中,然后使用Collections.sort()对键进行排序,最后遍历键来访问对应的值,这样可能会更加高效。 文章标签提到了Hadoop,但在这段...

    对于java map类排序

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

    java map实例,排序

    关于Map的排序,Java 8引入了一个新的API——`Map.Entry`的`comparingByValue()`和`comparingByKey()`方法,这使得我们可以方便地对Map的值或键进行比较和排序。例如,可以使用`map.entrySet().stream().sorted(Map....

    如何利用Java8 Stream API对Map按键或值排序

    若要按Map的值排序,我们可以使用`comparingByValue()`方法。它创建一个比较器,根据每个条目的值进行比较。代码示例如下: ```java Map, String> sortedMap = codes.entrySet().stream() .sorted(Map.Entry....

    List<Map>中英文排序

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

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

    本次我们关注的是Java集合框架中的三类接口:List、Set和Map,以及如何实现它们的特定功能,特别是关于`TreeSet`和`TreeMap`的按值排序。标题中提到的“JCF(List、Set、Map)学习,实现了,value&gt;按value排序”是一个...

    对map里面的value进行排序

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

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

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

    java中Map集合的排序方法

    Map中元素存放是无序的 HashMap注意事项: 1,HashMap底层维护一个数组,我们向HashMap中所放置的对象实际上是存储在该数组当中; 2,当向HashMap中put一对键值时,它会根据key的hashCode值计算出一个位置,该位置...

    ordered-map:按值排序的HashMap

    `ordered-map`,正如其名,是一个按值排序的HashMap。在传统的HashMap中,元素的位置是不确定的,因为它们的存储基于哈希函数的结果,这通常会导致元素在内存中的随机分布。然而,`ordered-map`提供了一种按特定顺序...

    java8-如何使用Stream API对Map类型元素排序.pdf

    本文将深入讲解如何使用Stream API对Map进行排序,包括按键排序、按值排序以及使用`merge()`函数处理键值冲突。 首先,让我们了解一下Java 8 Stream的基本概念。Stream API允许我们对集合进行一系列操作,如过滤、...

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

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

    基于Map_Reduce的分布式数据排序算法分析.pdf

    在排序问题中,Reduce函数通常会将接收到的键值对按顺序处理,生成最终的排序结果。 文章中可能涵盖了以下几种分布式排序算法: - Sort-Merge:这是一种基于MapReduce的简单排序方法,通过Map阶段的局部排序和...

    java map 集合 排序

    2. 对于值排序: ```java Collections.sort(list, new Comparator&lt;Map.Entry, Integer&gt;&gt;() { @Override public int compare(Map.Entry, Integer&gt; o1, Map.Entry, Integer&gt; o2) { return o1.getValue().compareTo...

    windows版svm-map文档分类排序

    5. MAP计算:根据预测结果计算MAP值,评估模型性能。 **Windows版SVM-MAP的使用** 在Windows版的SVM-MAP中,用户可能需要下载源码并进行编译,然后利用提供的接口或脚本进行数据处理、模型训练和排序。具体步骤...

Global site tag (gtag.js) - Google Analytics