码迷,mamicode.com
首页 > 编程语言 > 详细

Java 实现Map集合排序功能

时间:2015-01-12 19:14:38      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:

第一步:Map中新增sort临时键

// 初始化Map集合
List<Map<String, String>> columns = new ArrayList<Map<String, String>>();
Map<String, String> c1 = new HashMap<String,String>();
c1.put("sort", "8");
c1.put("title", "www.chuweibiao.com");
columns.add(c1);
Map<String, String> c2 = new HashMap<String,String>();
c2.put("sort", "5");
c2.put("title", "www.chuweibiao.com");
columns.add(c2);
Map<String, String> c3 = new HashMap<String,String>();
c3.put("sort", "13");
c3.put("title", "www.chuweibiao.com");
columns.add(c3);

第二步:进行排序

/**
 * Map类型元素集合排序
 * @param columns
 * 		Map类型元素集合
 */
private void listSortingForMapTypeElement(List<Map<String, Object>> columns) {
	Collections.sort(columns, new Comparator<Map<String, Object>>() {
		public int compare(Map<String, Object> last, Map<String, Object> next) {
			Object lastSort = last.get("sort");
			Object nextSort = next.get("sort");
			if (lastSort == null || nextSort == null) {
				return 0;
			} else {
				return Integer.parseInt(String.valueOf(lastSort)) 
						> Integer.parseInt(String.valueOf(nextSort)) ? 1 : 0;
			}
		}
	});
}

第三步:移除临时键

/**
 * 移除排序临时键
 * @param columns
 * 		Map类型元素集合
 */
private void removeSortKey(List<Map<String, Object>> columns) {
	for (Map<String, Object> column : columns) {
		column.remove("sort");
	}
}

谁有更好的办法请拍砖指教,O(∩_∩)O谢谢~

技术分享

Java 实现Map集合排序功能

标签:

原文地址:http://blog.csdn.net/for_china2012/article/details/42645985

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!