转载于:http://blog.csdn.net/flykos/article/details/54631573

参考:http://www.jb51.net/article/88710.htm

本篇文章,对中文的排序规则为:首个汉字——拼音——首字母,遵循26个英文字母的顺序排列

  1. import java.text.Collator;
  2. import java.util.ArrayList;
  3. import java.util.Collections;
  4. import java.util.Comparator;
  5. import java.util.HashMap;
  6. import java.util.List;
  7. import java.util.Locale;
  8. import java.util.Map;
  9. import org.apache.commons.collections.MapUtils;
  10. public class ListSort {
  11. public static void main(String[] args)  {
  12. List<Map<String, Object>> list=new ArrayList<Map<String,Object>>();
  13. Map<String, Object> map=new HashMap<String, Object>();
  14. map.put("name", "中国");
  15. Map<String, Object> map1=new HashMap<String, Object>();
  16. map1.put("name", "美国");
  17. Map<String, Object> map2=new HashMap<String, Object>();
  18. map2.put("name", "俄罗斯");
  19. Map<String, Object> map3=new HashMap<String, Object>();
  20. map3.put("name", "英国");
  21. list.add(map);
  22. list.add(map1);
  23. list.add(map2);
  24. list.add(map3);
  25. System.out.println("排序前:"+list);
  26. listSort(list);
  27. System.out.println("排序后:"+list);
  28. }
  29. public static void listSort(List<Map<String, Object>> resultList) {
  30. Collections.sort(resultList, new Comparator<Map<String, Object>>() {
  31. public int compare(Map<String, Object> o1, Map<String, Object> o2) {
  32. String name1=MapUtils.getString(o1, "name");
  33. String name2=MapUtils.getString(o2, "name");
  34. Collator instance = Collator.getInstance(Locale.CHINA);
  35. return instance.compare(name1, name2);
  36. }
  37. });
  38. }
  39. }

结果:

JAVA中对List<Map<String,Object>>中的中文汉字进行排序的更多相关文章

  1. java中对List<Map<String,Object>>中的中文汉字排序

    import java.text.Collator;import java.util.ArrayList;import java.util.Collections;import java.util.C ...

  2. JAVA中对List<map<String,Object>>根据map某个key值进行排序

    方法compareTo()比较此对象与指定对象的顺序.如果该对象小于.等于或大于指定对象,则分别返回负整数.零或正整数.返回整数,1,-1,0:返回1表示大于,返回-1表示小于,返回0表示相等. 普通 ...

  3. 添加,删除List<Map<String, Object>>元素

    这里讲对List<Map<String, Object>>的数据结构的添加和删除实例 添加 //初始化 List<Map<String, Object>> ...

  4. java中List<Map<String, Object>>关于null的判断

    List<Map<String, Object>> selectTmFileInfo = fileInfoService.selectTmFileInfoByToken(cTo ...

  5. List<Map<String, Object>>集合中获取某个key并转换为List<Integer>集合

    package com.codyy.sso.controller.yuanqu; import java.util.ArrayList; import java.util.HashMap; impor ...

  6. java和js中JSONObject,JSONArray,Map,String之间转换

    --------------------------------------------------Java中--------------------------------------------- ...

  7. List<Map<String,Object>>使用Java代码遍历

    List<Map<String,Object>>的结果集怎么使用Java代码遍历以获取String,Object的值: package excel; import java.u ...

  8. 迭代输出Map和List<Map<String,Object>>的方法

    一.Map<String,Object> String:key的类型 Object:value的类型,value可能是String,或者int类型,什么类型都可以 对于Map接口来说,本身 ...

  9. JavaBean与Map<String,Object>相互转换

    一.为什么要实现javaBean与Map<String,Object>相互转换 Spring中的BaseCommandController对象可以将传递过来的参数封装到一个JavaBean ...

随机推荐

  1. Springboot实现filter拦截token验证和跨域

    背景 web验证授权合法的一般分为下面几种 使用session作为验证合法用户访问的验证方式 使用自己实现的token 使用OCA标准 在使用API接口授权验证时,token是自定义的方式实现起来不需 ...

  2. 解决/bin/sh: 1: syntax error: "(" unexpected错误,以及更换bash仍然无法解决的问题

    编译文件的时候出现 /bin/sh: 1: syntax error: "(" unexpected 错误. 网上查到的资料都是: (1)在脚本前写#!/bin/bash (2)执 ...

  3. python面试笔试题,你都会了吗?快来复习

    1.一行代码实现1--100之和 利用sum()函数求和 >>> sum(range(0,101)) 5050 2.如何在一个函数内部修改全局变量 利用global 修改全局变量 a ...

  4. 【Java】 剑指offer(3) 二维数组中的查找

    本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集 题目 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上 ...

  5. 097实战 关于ETL的几种运行方式

    一:代码部分 1.新建maven项目 2.添加需要的java代码 3.书写mapper类 4.书写runner类 二:运行方式 1.本地运行 2.集群运行 3.本地提交集群运行 三:本地运行方式 1. ...

  6. MAC OS X下配置PHP开发、调试环境

    操作系统:MAC OS X 工具:MAMP.PhpStorm.xdebug.chrome 1.下载MAMP 2.安装比较简单,安装完成后,应用程序中会增加如下4个应用 MacGDBp是PHP调试器,使 ...

  7. hdu1269 有向图强连通 【Tarjan】(模板)

    <题目链接> 题目大意: 为了训练小希的方向感,Gardon建立了一座大城堡,里面有N个房间(N<=10000)和M条通道(M<=100000),每个通道都是单向的,就是说若称 ...

  8. HTTP协议学习笔记(四)

    HTTP协议学习笔记(四) 与 HTTP 协作的 Web 服务器 一台 Web 服务器可搭建多个独立域名的 Web 网站,也可作为通信路径上的中转服务器提升传输效率. 1.用单台虚拟主机实现多个域名 ...

  9. 用js来实现那些数据结构01(数组篇01-数组的增删)

    在开始正式的内容之前,不得不说说js中的数据类型和数据结构,以及一些比较容易让人混淆的概念.那么为什么要从数组说起?数组在js中是最常见的内存数据结构,数组数据结构在js中拥有很多的方法,很多初学者记 ...

  10. 幕布V1.1.9最新版漏洞集合

    0X00 前言 幕布本人最早接触是在P神的知识星球里面看到P神推荐的,后来下了个用着还挺好用. 之前一直都放一些零零散散的笔记,最近整理的时候,一时兴起,本着漏洞源于生活的态度,遂对幕布的安全性做了些 ...