博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HashMap的两种排序方式
阅读量:4694 次
发布时间:2019-06-09

本文共 871 字,大约阅读时间需要 2 分钟。

 

Map<String, Integer> map = new HashMap<String, Integer>();

map.put("d", 2);
map.put("c", 1);
map.put("b", 1);
map.put("a", 3);
List<Map.Entry<String, Integer>> infoIds =
    new ArrayList<Map.Entry<String, Integer>>(map.entrySet());
//排序前
for (int i = 0; i < infoIds.size(); i++) {
    String id = infoIds.get(i).toString();
    System.out.println(id);
}
//d 2
//c 1
//b 1
//a 3
//排序
Collections.sort(infoIds, new Comparator<Map.Entry<String, Integer>>() {   
    public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {      
        //return (o2.getValue() - o1.getValue()); 
        return (o1.getKey()).toString().compareTo(o2.getKey());
    }
}); 
//排序后
for (int i = 0; i < infoIds.size(); i++) {
    String id = infoIds.get(i).toString();
    System.out.println(id);
}
//根据key排序
//a 3
//b 1
//c 1
//d 2
//根据value排序
//a 3
//d 2
//b 1
//c 1

转载于:https://www.cnblogs.com/handsome1013/p/8111013.html

你可能感兴趣的文章
Production Order System Status
查看>>
python中将字典转换成定义它的json字符串
查看>>
MAMP pro mac 本地集成环境 php sal apache等集成软件
查看>>
PHP笔记
查看>>
C++ 文件和流
查看>>
jquery.fileupload.js 多文件上传
查看>>
BroadcastReceiver概述
查看>>
i686和x86_64的区别
查看>>
玩转TypeScript(1) --定义简单的类
查看>>
从零开始的JS生活(二)——BOM、DOM与JS中的事件
查看>>
阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第3节 接口_7_接口的静态方法定义...
查看>>
ubuntn安装五笔输入法
查看>>
Linux学习笔记之(2)~linux目录树概览和说明
查看>>
Poj 1019 Number Sequence( 数据分析和操作)
查看>>
Hibernate实现分页查询
查看>>
Odoo与浪潮合资研发PS Cloud之如何管理你不拥有的股票
查看>>
2017-2018-1 20155220 20155309 20155317 实验一 开发环境的熟悉
查看>>
SQL Plus使用简单介绍
查看>>
Javascript面向对象编程(二):构造函数的继承
查看>>
hdu 4462(状态压缩)
查看>>