Java中HashMap排序
2024-08-26 21:19:41
注:
转载于 http://www.cnblogs.com/xingyun/archive/2012/12/09/2809962.html
package com.holdobject; import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry; public class HashMapSort {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<String, Integer>();
map.put("d", 3);
map.put("c", 1);
map.put("b", 1);
map.put("a", 2); List<Map.Entry<String, Integer>> infoIds = new ArrayList<Map.Entry<String, Integer>>(
map.entrySet()); System.out.println("Before Sort....");
for (int i = 0; i < infoIds.size(); i++) {
System.out.println(infoIds.get(i).toString());
} System.out.println("\n\nAfter Sort(Key)...."); Collections.sort(infoIds, new Comparator<Map.Entry<String, Integer>>() {
public int compare(Entry<String, Integer> o1,
Entry<String, Integer> o2) {
return o1.getKey().toString().compareTo(o2.getKey());
}
}); for (int i = 0; i < infoIds.size(); i++) {
System.out.println(infoIds.get(i).toString());
} System.out.println("\n\nAfter Sort(Value)...."); Collections.sort(infoIds, new Comparator<Map.Entry<String, Integer>>() {
public int compare(Entry<String, Integer> o1,
Entry<String, Integer> o2) {
return o1.getValue() - (o2.getValue());
}
}); for (int i = 0; i < infoIds.size(); i++) {
System.out.println(infoIds.get(i).toString());
}
}
}
注:
以上实现,调用了Collection.sort接口,其中sort函数的参数是List<T>泛型
Map.Entry<String,Double> 为HashMap中的键值对
参考资料:
http://blog.csdn.net/zxy_snow/article/details/7232035
最新文章
- java面向对象的语言
- EMV内核使用中的常见问题
- android 入门- 词汇
- 关于禁止ipad的home键解决方法
- Android 手机卫士13--进程设置
- 【mysql】MySQL存储IP地址
- com学习(四)2——用 ATL 写第一个组件(vs2003)
- Mongodb数据操作基础
- 浅谈 Python 的 with 语句
- Github上更新自己Fork的代码
- C#将数据以XML格式写入Excel
- 342. Power of Four
- jQuery 效果 – 淡入淡出
- tensorflow:验证码的识别(中)
- vim中行末去掉^M
- log4j 详细使用教程【转载】
- 安装Java语言的jdk,配置java环境变量
- python小练习:读入一个考试得分,判断这个分数是哪个等级,并输出,考虑异常场景
- Eclipse项目左侧调整显示或者不显示路径
- redis设计与实现-数据结构
热门文章
- ASP.NET中的状态保持(转载)
- Java 8 Lambda表达式
- asp.net读取excel文件多种方法
- WordPress 主题开发 - (六) 创建主题函数 待翻译
- 用户View,五大布局
- Windows程序设计之Hello,Windows 98程序的声音调试记录
- 开始认真学计算机网络----computer network学习笔记(一)
- 在Linux下JDK1.4.2安装报错的解决方法
- [原创]从Oracle和Microsoft Sql Server迁移到PostgreSQL Plus Advanced Server
- 贵州大学iPhone、Android(安卓)项目助跑计划!!!