大家可能经常会遇到需要对map,hashtalbe进行排序的需求,并且会为此头疼。不多说,直接上代码:
package com.ddmap.hadoop.db.util;
import java.util.*;
/**
* Created by IntelliJ IDEA.
* User: 杨果
* Date: 12-1-9
* Time: 上午10:50
* 该类是对Map的value进行排序的工具类
*/
public class SortMapByValue {
/***
* 升序
*/
public static Map.Entry[] ascend(Map h) {
Set set = h.entrySet();
Map.Entry[] entries = (Map.Entry[]) set.toArray(new Map.Entry[set
.size()]);
Arrays.sort(entries, new Comparator() {
public int compare(Object arg0, Object arg1) {
Long key1 = Long.valueOf(((Map.Entry) arg0).getValue().toString());
Long key2 = Long.valueOf(((Map.Entry) arg1).getValue().toString());
return key1.compareTo(key2);
}
});
return entries;
}
public static void main(String[] args){
Map map=new HashMap();
map.put("a",1);
map.put("b",2);
map.put("c",-1);
map.put("d",9999);
Map.Entry[] entries= SortMapByValue.ascend(map);
for(int i=0;i<entries.length;i++){
Map.Entry entrie=entries[i];
System.out.println(entrie.getKey()+"="+entrie.getValue());
}
}
}
输出效果如下:
c=-1
a=1
b=2
d=9999
分享到:
相关推荐
对Map的key和value进行排序 对Map的key和value进行排序是Java编程中非常重要的一部分。Map是Java集合框架中的一种数据结构,用于存储键值对。然而,在实际应用中,我们经常需要对Map中的key或value进行排序,以满足...
然而,有时我们需要对Map中的值进行排序,例如按照value的大小进行升序或降序排列。这篇博客"对map里面的value进行排序"探讨的就是如何实现这一需求。 首先,我们了解Map接口的基本概念。Map接口不直接支持排序,...
"对 Map 按 key 和 value 分别排序" 摘要:本文主要介绍了 Map 按 key 和 value 分别排序的方法,包括使用 TreeMap 的 key 排序和 value 排序两种方式。 Map 按 key 排序 Map 是键值对的集合接口,它的实现类主要...
当我们需要按照Value(值)对Map进行排序时,通常会采用特定的方法。以下是关于Java Map按照Value排序的实现方法的详细说明: 1. **HashMap**: - HashMap是基于哈希表实现的,它不保证元素的顺序,插入顺序和遍历...
在博文“HashMap通过对VALUE排序 源代码”中,作者可能详细介绍了如何实现上述方法,尤其是自定义Comparator来对HashMap的值进行排序。遗憾的是,由于没有提供具体的博客内容,我们无法给出更详细的源代码分析。不过...
当需要对Map中的数据进行排序时,通常有两种情况:按key排序和按value排序。本文将详细介绍如何在Android环境下对Map进行这两种排序。 首先,我们来讨论按key排序。TreeMap是一个基于红黑树实现的Map,它可以根据...
Map是一种键值对的集合,它可以按照键或值进行排序。下面,我们将详细地介绍Java Map的按键排序和按值排序。 按键排序(sort by key) Java中的TreeMap,V>类可以实现Map的按键排序。TreeMap,V>是一个基于红黑树的...
C++11中有无序map即: unordered_map 可以不自动排序, 那么C++98中只有map 如何避免自动排序。
在上面的代码中,我们使用 `Map.Entry., V>comparingByValue()` 对 Map 的 Entry 集合进行排序,并使用 `reversed()` 方法将排序结果反转,以实现降序排序。 Map 根据 Key 排序 如果我们想根据 Map 的 Key 排序,...
将map按ASCII码排序,适用于将请求头的参数转为map,map内可再含有map,递归排序,无遗漏。运行demo里main方法即可进行验证。
在本例中,我们将详细探讨如何在Java中对Map集合按value值进行排序,并给出一个具体的实例代码。 首先,Map接口有多种实现类,如HashMap、TreeMap等。这里我们以HashMap为例,因为它是Java中最常用的Map实现,但它...
然而,在某些场景下,我们可能需要将Map中的元素按照值(value)进行排序。本文将详细介绍如何在Java中实现Map按值排序的几种方法。 1. 使用TreeMap TreeMap是Java中实现Map接口的一个类,它内部使用红黑树数据结构...
而这里提供的Java代码示例主要是关于如何在Java标准库中对Map进行排序操作。虽然Hadoop有自己的MapReduce编程模型,与Java中的Map排序不直接相关,但在处理大规模数据时,有效地排序和组织数据是非常重要的,这可能...
标题中提到的“JCF(List、Set、Map)学习,实现了,value>按value排序”是一个关键点,我们将深入探讨这个话题。 首先,让我们了解List、Set和Map的区别。List是有序的集合,允许重复元素,并且可以保持插入顺序;Set...
然而,有时我们需要根据特定条件(如键或值)对`Map`进行排序。本文将详细介绍如何实现`Map`按照值(value)升序排序以及按照键(key)排序。 首先,我们需要了解`Map`的基本概念。`Map`接口是Java集合框架的一部分...
一个Map是一个键值对的集合,其中每个键都是唯一的,并且关联着一个值。当一个Map的值本身又是一个Map时,我们就说这个Map是嵌套的。例如,我们可以有一个用户信息的Map,其中键是用户ID,而对应的值是一个包含...
你可以使用流来转换Map,然后通过Collectors.toMap()方法创建一个新的Map,这个新的Map将会使用提供的函数对值进行排序。以下是一个示例: ```java import java.util.*; import java.util.stream.*; public class ...
在Java编程中,Map接口是数据结构之一,用于存储键值对。...对于对象属性Map的排序,需要先对Map进行排序,然后可能还要对对象列表进行排序。通过理解这些概念,开发者能够灵活地控制Java程序中数据的排序逻辑。
支持一个List<Map>按照MAP中的一个或者多个Key的value值的中英文来排序,自动识别字符和数字(包括[a-zA-z]?[0-9]*)排序