List<Map<String, Object>> 中文字段排序
2015-11-24 22:20
591 查看
循环遍历按其中某个中文字段排序
结果:
作者:itmyhome
/** * 中文排序 * @author itmyhome * */ public class MapComparator implements Comparator<Map<String, Object>> { @Override public int compare(Map<String, Object> o1, Map<String, Object> o2) { // TODO Auto-generated method stub String b1 = (String)o1.get("NAME"); String b2 = (String)o2.get("NAME"); Collator cmp = Collator.getInstance(java.util.Locale.CHINA); if (cmp.compare(b1, b2)>0){ return 1; }else if (cmp.compare(b1, b2)<0){ return -1; } return 0; } }
import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; public class Test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub List<Map<String, Object>> list = new ArrayList<Map<String, Object>>(); Map<String, Object> map1 = new HashMap<String, Object>(); Map<String, Object> map2 = new HashMap<String, Object>(); Map<String, Object> map3 = new HashMap<String, Object>(); Map<String, Object> map4 = new HashMap<String, Object>(); Map<String, Object> map5 = new HashMap<String, Object>(); map1.put("NAME", "朱元璋"); map2.put("NAME", "常遇春"); map3.put("NAME", "张无忌"); map4.put("NAME", "郭靖"); map5.put("NAME", "洪七公"); list.add(map1);list.add(map2);list.add(map3);list.add(map4);list.add(map5); System.out.println("***排序前***"); for(Map<String, Object> map:list){ System.out.println(map.get("NAME")); } System.out.println("***排序后***"); Collections.sort(list, new MapComparator()); for(Map<String, Object> map:list){ System.out.println(map.get("NAME")); } } }
结果:
***排序前*** 朱元璋 常遇春 张无忌 郭靖 洪七公 ***排序后*** 常遇春 郭靖 洪七公 张无忌 朱元璋
作者:itmyhome
相关文章推荐
- java中的类型安全问题-Type safety: Unchecked cast from Object to ...
- 我遇到的错误提示:reason: '*** setObjectForKey: object cannot be nil (key: id)' 的病因
- Objective-C中的instancetype和id关键字
- 用Objective-C编写一个终端应用
- Swift与Objective-C交互
- Objective-C类,对象,方法
- Neither BindingResult nor plain target object for bean name 'internationalMakePrice' available as re
- JObject——直接转化为已知的对象类型
- Objective-C——消息、Category和Protocol
- AS3 SharedObject的保存路径
- c++ class and objects
- JSON 之 SuperObject(1)
- Objective-C中@property的所有属性详解
- 关于Objection 框架或解耦合方案
- java.util.NoSuchElementException: Timeout waiting for idle object
- java.util.NoSuchElementException: Timeout waiting for idle object
- Objective-C编码规范:26个方面解决iOS开发问题(转)
- Objective-C内存管理教程和原理剖析(四)
- Objective-C内存管理教程和原理剖析(三)
- 怎么解决python中TypeError: can't pickle instancemethod objects的这个错误