java1.8新特性
1 | Lambda 表达式 |
2 | 方法引用 |
3 | 函数式接口 |
4 | 默认方法 |
5 | Stream |
6 | Optional 类 |
7 | Nashorn, JavaScript 引擎 |
8 | 新的日期时间 API |
9 | Base64 |
1.准备测试数据
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> map1 = new HashMap<String, Object>();
map1.put("9aa", "aa");
Map<String, Object> map2 = new HashMap<String, Object>();
map2.put("ff", "ff");
Map<String, Object> map3 = new HashMap<String, Object>();
map3.put("6ee", "ee");
Map<String, Object> map4 = new HashMap<String, Object>();
map4.put("8bb", "ee");
Map<String, Object> map5 = new HashMap<String, Object>();
map5.put("4gg", "gg");
list.add(map1);
list.add(map2);
list.add(map3);
list.add(map4);
list.add(map5);
2. 1.8之前
Collections.sort(list, new Comparator<Map<String, Object>>() {
public int compare(Map<String, Object> o1, Map<String, Object> o2) {
return o1.keySet().toString().compareTo(o2.keySet().toString());
}
});
1.8版本排序(只需要一句话)
Collections.sort(list, (s1, s2) -> s1.entrySet().toString().compareTo(s2.entrySet().toString()));