Map的内容按字母顺序排序
map有自带的排序功能,但需要重写排序方法,代码如下:
package coreJava.com.shindo.corejava.map; 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 MapSort {
/**
*
* @Title: sortMap
* @Description: 对集合内的数据按key的字母顺序做排序
*/
public List<Map.Entry<String, String>> sortMap(final Map<String, String> map) {
final List<Map.Entry<String, String>> infos = new ArrayList<Map.Entry<String, String>>(map.entrySet()); // 重写集合的排序方法:按字母顺序
Collections.sort(infos, new Comparator<Map.Entry<String, String>>() {
@Override
public int compare(final Entry<String, String> o1, final Entry<String, String> o2) {
return (o1.getKey().toString().compareTo(o2.getKey()));
}
}); return infos;
} public static void main(final String[] args) {
final Map<String, String> map = new HashMap<String, String>();
map.put("charSet", "utf-8");
map.put("merId", "5412");
map.put("acqId", "321"); final List<Map.Entry<String, String>> list = new MapSort().sortMap(map); for (final Map.Entry<String, String> m : list) {
System.out.println(m.getKey() + ":" + m.getValue());
} } }
执行main方法,结果如下:
acqId:321
charSet:utf-8
merId:5412
Map的内容按字母顺序排序的更多相关文章
- 【C++ 字符串题目】 输入三个人名,按字母顺序排序输出
题目来源:https://acm.ujn.edu.cn Problem A: [C++ 字符串] 输入三个人名,按字母顺序排序输出 Time Limit: 1 Sec Memory Limit: 1 ...
- 实现List按与一个字符串的相似度和字母顺序排序(适用于模糊查询后的排序)
因公司业务需要,自己写了一个,保存起来以后可能还会用到.如果还有更好的方法或者算法,希望大家提出来. 1.简单的相似度算法(自己想到的) 因为List中每个String都会包含一个标准的字符 ...
- mysql如何给汉字按照首字母顺序排序
select * from 表名 order by convert(列明 USING gbk) COLLATE gbk_chinese_ci asc
- 按字母顺序排序的 arcpy.mapping 类列表
arcpy.mapping 类可使用地图文档 (.mxd) 或图层文件 (.lyr) 中的不同对象类型的各种方法和属性.此文档可专门用作快速参考.有关详细信息,请使用链接跳转至各帮助页面. arcpy ...
- url参数用&拼接并且按照字母顺序排序方法
private string urlParamManager(JObject postArray, bool flag) { ArrayList keys = new ArrayList(); for ...
- sql按照汉字首字母顺序排序(桃)
SELECT * FROM 表名 order by CONVERT(字段名 USING gbk)
- java算法面试题:有一个字符串,其中包含中文字符、英文字符和数字字符,请统计和打印出各个字符的个数 按值的降序排序,如果值相同则按键值的字母顺序
package com.swift; import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; publi ...
- LinkedHashMap 根据PUT顺序排序Map
最近工程里面报表需要合计 , 因为所有的项都是动态的,所以只能动态添加. 思路是使用Map,初始化所有Map,然后在Map中合计并且覆盖. 使用HashMap , 初始化后所有动态项的顺序都乱了. M ...
- 对Array进行排序(按字母顺序)
通过使用java.utils.Arrays.sort()和String.CASE_INSENSITIVE_OREDR,可以很容易的对结果进行排序(按字母顺序): String[] array = { ...
随机推荐
- springMVC 注解版
http://blog.csdn.net/liuxiit/article/details/5756115 http://blog.csdn.net/hantiannan/article/categor ...
- nyist oj 79 拦截导弹 (动态规划基础题)
拦截导弹 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描写叙述 某国为了防御敌国的导弹突击.发展中一种导弹拦截系统.可是这样的导弹拦截系统有一个缺陷:尽管它的第一发炮弹可以 ...
- Java基础知识强化59:String(字符串)和其他类型的相互转化
1. String类型 ---> 其他类型 (1)使用基本类型包装类的parseXXX方法 e.g:String(字符串)转化为int(整型) String MyNumber ="12 ...
- log4net根据日志类型写入到不同的文件中
<?xml version="1.0"?> <configuration> <configSections> <!--log4net配置安 ...
- sqlserver编程基本语法
一.定义变量 --简单赋值 declare @a int set @a=5 print @a --使用select语句赋值 declare @user1 nvarchar(50) select @ ...
- 第一个Delphi小程序
第一次应工作需呀,接触这个语言,今晚在自己的电脑搭建好环境,写的第一个超简单的Delphi小程序! var temp:Integer; //求个位数 procedure TForm1.BitBtn1C ...
- 基于java callable及future接口解决生产者消费者问题
这两天复习java线程时,把java里面的线程基本知识点与jdk1.5以后新添加的一些类的使用都了解了一下,借用生产者消费者的问题来将他们实践一下. 题目:(题目在csdn一大牛的空间找的) 生产者- ...
- Google map实现类似Google earth的图标展开功能
前言 在Google map的开发时,如果有多个图标重叠在一起,这时下面的图标就点击不到.而在Google Earth中,鼠标一移到上面就会自动弹开,这对于用户而言是十分人性化的一个功能.如下是在Go ...
- 一个小玩具:Python调用Mysql
1. ubuntu安装MySQL how to install:$ sudo apt-get install mysql-server$ sudo apt-get install mysql-clie ...
- win7安装memcached
根据公司业务需求,需要用memcache缓存,正好接触一下,在win7下配置安装: 1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached 2. 在终端(也 ...