hashMap 根据键 排序

简介:           import java.util.Collections; import java.util.Comparator; import java.util.HashMap; import java.

 

 

 

 

 

import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;

/**
 * @author baoyou  E-mail:curiousby@163.com
 * @version 创建时间:2015年9月7日 上午10:29:36 
 * des:
 */
public class SortMap {

	static Map<String,String> target = new HashMap<>();
	
	static {
		target.put("b", "b");
		target.put("c", "c");
		target.put("a", "a");
	}
	
	public static void  print(){
		for ( String key: target.keySet()) {
			System.out.println(key + ":" + target.get(key) );
		}
		System.out.println("---------------------");
	}
	
	static void  sort(){
		Set<Entry<String,String>> setEntries= target.entrySet(); 
		List<Entry<String,String>> listEntries = new LinkedList<>(setEntries);
		Collections.sort(listEntries, new Comparator<Entry<String,String>>() {
			@Override
			public int compare(Entry<String, String> entry1,
					Entry<String, String> entry2) { 
				return entry1.getKey().compareTo(entry2.getKey());
			}
		});
		 Map<String,String> mapEntries = new LinkedHashMap<String, String>();
         for(Entry<String,String> entry: listEntries) {
        	 mapEntries.put(entry.getKey(), entry.getValue());
         }
         for(Entry<String,String> entry : mapEntries.entrySet()) {
             System.out.println(entry.getValue() + ":" + entry.getKey());
         }
	}
	
	public static void main(String[] args) {
		print();
		sort();
	}
	
}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

捐助开发者

在兴趣的驱动下,写一个免费的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(右上角的爱心标志,支持支付宝和PayPal捐助),没钱捧个人场,谢谢各位。



 
 
 谢谢您的赞助,我会做的更好!

 

 

目录
打赏
0
0
0
0
2
分享
相关文章
一道Java集合排序题,HashMap排序,面试必备
一道Java集合排序题,HashMap排序,面试必备
123 0
java使用HashMap对文件进行排序并输出
java使用HashMap对文件进行排序并输出
Java——HashMap键值排序
Java——HashMap键值排序
452 0
Java HashMap排序
HashMap排序可以分为按键排序与按值排序两种,实现思路是先转为List容器,再重写比较函数,调用java内置排序算法即可。
2057 0
Java HashMap 默认排序
先看一段Java代码。 package com.m58.test; import java.text.ParseException; import java.text.SimpleDateFormat; import java.
1406 0
Collections.sort()对HashMap里的键值对按照键进行排序
MainActivity如下: package cn.testhashmapsort; import java.util.ArrayList; import java.
1126 0
Java 集合面试题从数据结构到 HashMap 源码剖析详解及长尾考点梳理
本文深入解析Java集合框架,涵盖基础概念、常见集合类型及HashMap的底层数据结构与源码实现。从Collection、Map到Iterator接口,逐一剖析其特性与应用场景。重点解读HashMap在JDK1.7与1.8中的数据结构演变,包括数组+链表+红黑树优化,以及put方法和扩容机制的实现细节。结合订单管理与用户权限管理等实际案例,展示集合框架的应用价值,助你全面掌握相关知识,轻松应对面试与开发需求。
127 3
|
9月前
|
让星星⭐月亮告诉你,HashMap中保证红黑树根节点一定是对应链表头节点moveRootToFront()方法源码解读
当红黑树的根节点不是其对应链表的头节点时,通过调整指针的方式将其移动至链表头部。具体步骤包括:从链表中移除根节点,更新根节点及其前后节点的指针,确保根节点成为新的头节点,并保持链表结构的完整性。此过程在Java的`HashMap$TreeNode.moveRootToFront()`方法中实现,确保了高效的数据访问与管理。
69 2
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等