zoukankan      html  css  js  c++  java
  • JAVA中对List<Map<String,Object>>中的中文汉字进行排序

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

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

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

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

    结果:

  • 相关阅读:
    搭建集群时遇到各种奇葩问题的大招~~
    oracle初学心得(转)
    "小寒"饮食养生
    时刻修正自已的思想
    myeclipse使用
    从javascript语言本身谈项目实战(转)
    Java的内存泄漏(转)
    概念解释
    小穴位大健康——李智
    历史朝代表
  • 原文地址:https://www.cnblogs.com/zl0372/p/7459896.html
Copyright © 2011-2022 走看看