java按照map的value排序
来源:互联网 发布:国际域名和国内域名 编辑:程序博客网 时间:2024/05/18 01:49
java的TreeMap可以排序,只可惜是按照key来排序的,或者重写其他Map的排序算法也都是按照key来排序的,下面贴出来一个按照value排序的算法:
- public class SortMap {
- public static void main(String[] args) throws Exception {
- // TODO code application logic here
- Map<String, Integer> myMap = new LinkedHashMap();
- myMap.put("1", 1);
- myMap.put("2", 4);
- myMap.put("3", 3);
- myMap.put("4", 9);
- myMap.put("5", 6);
- myMap.put("6", 2);
- printMap(myMap);
- myMap = sortMap(myMap);
- printMap(myMap);
- }
- private static void printMap(Map map){
- System.out.println("===================mapStart==================");
- Iterator it = map.entrySet().iterator();
- while(it.hasNext()){
- Map.Entry entry = (Map.Entry) it.next();
- System.out.println(entry.getKey() + ":" + entry.getValue());
- }
- System.out.println("===================mapEnd==================");
- }
- public static Map sortMap(Map oldMap) {
- ArrayList<Map.Entry<String, Integer>> list = new ArrayList<Map.Entry<String, Integer>>(oldMap.entrySet());
- Collections.sort(list, new Comparator<Map.Entry<String, Integer>>() {
- @Override
- public int compare(Entry<java.lang.String, Integer> arg0,
- Entry<java.lang.String, Integer> arg1) {
- return arg0.getValue() - arg1.getValue();
- }
- });
- Map newMap = new LinkedHashMap();
- for (int i = 0; i < list.size(); i++) {
- newMap.put(list.get(i).getKey(), list.get(i).getValue());
- }
- return newMap;
- }
- }
0 0
- java按照map的value排序
- java按照map的value排序
- java按照map的value排序
- java按照map的value排序
- java按照map的value排序
- Java Map按照Value 排序
- java map按照value排序
- map 按照value排序
- Map按照Value值排序
- Java中Map按照Value值进行排序
- Java Map集合按照key和value排序之法
- Map按照Key排序和Map按照Value排序
- Map中按照value的大小进行排序
- Map的插入操作和按照value排序
- Map的插入操作和按照value排序
- 关联容器map按照value排序或者按照key排序
- Map集合按照Value排序(Map value sort)
- C++ map容器 按照value值排序
- [Python] DNS-Related Python Program
- js 图形 http://www.bootcss.com/p/chart.js/
- ios面试题汇总
- 云计算基础知识第四讲:虚拟化概念及相关概念介绍
- Android键盘将布局顶上去的解决办法
- java按照map的value排序
- 如何设计一个 iOS 控件?(iOS 控件完全解析)
- appium python版api笔记
- oracle-btree和bitmap索引
- [Hadoop 2.6.0] Remote Submit Job Error:[ExitCodeException: /bin/bash: line 0: fg: no job control]
- 输入流转换成字符串
- Drools动态加载规则文件
- 谷歌浏览 打印无法分页 page-break-after: always
- PhantomJS快速入门教程(服务器端的 JavaScript API 的 WebKit)