`

实现对Map按照value升序排序

 
阅读更多
/**
	 * @param map
	 * @return 实现对map按照value升序排序
	 */
	@SuppressWarnings("unchecked")
	public static Map.Entry[] getSortedHashtableByValue(Map map) {
		Set set = map.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;
	}

 

 

/**
	 * 实现对map按照value升序排序
	 * @param map
	 * @return
	 */
	public static List<Entry<Object, Object>> getSortByValue(Map map) {
		Set<Entry<Object, Object>> set = map.entrySet();
		List<Map.Entry<Object, Object>> list = new ArrayList<Map.Entry<Object, Object>>(set);
		Collections.sort(list, new Comparator<Map.Entry<Object, Object>>() {
			public int compare(Map.Entry<Object, Object> obj1,
					Map.Entry<Object, Object> obj2) {
				return ((String) obj1.getKey()).compareTo((String) obj2.getKey());// 按key降排序
				// return (Integer)obj1.getValue() - (Integer)obj2.getValue();//按value升序排序
				// return (Integer)obj2.getValue() - (Integer)obj1.getValue();//按value降序排序
			}
		});
		return list;
	}

 

分享到:
评论

相关推荐

    map实现按value升序排序

    本文将详细介绍如何实现`Map`按照值(value)升序排序以及按照键(key)排序。 首先,我们需要了解`Map`的基本概念。`Map`接口是Java集合框架的一部分,它定义了键值对的存储和访问方法。常见的`Map`实现有`HashMap...

    Java Map按键排序和按值排序

    Map是一种键值对的集合,它可以按照键或值进行排序。下面,我们将详细地介绍Java Map的按键排序和按值排序。 按键排序(sort by key) Java中的TreeMap,V&gt;类可以实现Map的按键排序。TreeMap,V&gt;是一个基于红黑树的...

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

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

    对map里面的value进行排序

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

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

    然后,我们使用`Collections.sort()`方法,传入一个自定义的Comparator,使得value按照升序排序。最后,遍历排序后的List并打印出键值对。 总的来说,对Android中的Map进行key排序可以使用TreeMap配合自定义...

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

    Java8 Stream 操作 Map 根据 Key 或 Value 排序的实现 Java8 中的 Stream 操作为...今天我们介绍了如何使用 Java8 Stream 操作 Map 根据 Key 或 Value 排序的实现,希望能够对读者有些帮助,也希望大家多多支持我们。

    Java Map 按值排序

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

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

    首先,标准的SortedMap接口是根据键(key)进行排序的,例如TreeMap就是一种按键升序排序的实现。因此,如果想按值排序,我们需要自定义排序逻辑。通常有两种主要的方法来实现这一目标: 方法一:使用自定义比较器...

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

    默认情况下,TreeMap会按照key的自然顺序进行升序排序。 - 要实现自定义排序,可以通过传入一个实现了`Comparator`接口的匿名内部类来创建TreeMap。例如,以下代码展示了如何创建一个降序排序的TreeMap: ```java...

    map容器实现方法

    默认情况下,`map`按照键的升序排列。如果需要自定义排序规则,可以传递一个比较函数对象或函数指针给`map`的模板参数: ```cpp struct CustomCompare { bool operator()(int a, int b) const { return a &gt; b; //...

    java中set、list和map的使用方法实例

    // java中对象容器主要有Set,List和Map三个接口类。 // 迭代器(Iterator)模式,又叫做游标(Cursor)...// TreeMap按自己的意愿进行排序,默认按key值升序排序。 另包含一篇网文:在java中使用TreeMap进行中文排序

    Java中实现参数名ASCII码从小到大排序(字典序).doc

    在Java编程中,有时我们需要对一组参数按照字典顺序(ASCII码值从小到大)进行排序,例如在创建签名或构建URL查询字符串时。这里提供了一个名为`createSign`的方法,它接受一个`Map, Object&gt;`类型的参数,并返回一个...

    java如何对map进行排序详解(map集合的使用)

    Java中的Map接口是用于存储键值对的数据结构,它提供了多种实现类,每种实现类有不同的特性和排序规则。在Java中,Map的排序通常分为两种情况:一种是基于Map本身实现类的特性进行排序,如TreeMap;另一种是通过...

    map_map_增删查改_STL_C++_

    4. 比较函数(comparison function):默认情况下,`map`按照键的升序排列,但可以通过自定义比较函数改变排序规则。 ### 增加元素 增加元素到`map`中通常使用`insert`或`emplace`函数。`insert`接受一个键值对,...

    Java Map 按Key排序实例代码

    在运行这段代码后,可以看到输出先显示排序前的键值对,然后是排序后的键值对,Key按照升序排列。 此外,如果Key是自定义的类,那么可以通过实现Comparator接口,重写 `compare()` 方法来自定义排序规则。在示例...

    Java中Map数据处理公共方法MapUtils

    Map是Java中最天才的设计,使用起来也很灵活,该类总结了Map通过key和value进行升序和降序排序,Map的两种遍历的公共方法以及上面功能的测试方法

    “气球” 的最大数量(map统计+排序找最小)1

    - 使用 `sort` 函数对向量 `res` 进行升序排序。`sort` 函数是 C++ STL 中的一个函数,它接受三个参数:排序范围的起始迭代器、结束迭代器和一个可选的比较函数。在这个问题中,我们没有提供比较函数,所以默认是...

    STL中的map用法详解.rar

    `map`中的元素默认按照键的升序排列。可以自定义比较函数通过传递到`std::map`的第三个模板参数,例如`std::map, Value, Compare&gt;`,其中`Compare`是一个比较函数对象或函数指针。 7. **容量操作** `empty`检查`...

    java中对单层json进行key字母排序

    `java中对单层json进行key字母排序`的标题指出了我们需要对一个单层JSONObject的键进行字母升序排序。描述提到这个资源可以直接在程序中使用,意味着提供了一个功能函数来实现这一操作。 在提供的代码中,可以看到...

    java中map集合的用法.pdf

    Map集合不按照特定顺序存储元素,而是通过键(Key)来查找对应的值(Value)。以下是对Map接口及其常用实现类的详细说明: 1. **声明Map**: 创建Map实例时,通常使用HashMap作为默认实现。例如: ```java Map, ...

Global site tag (gtag.js) - Google Analytics