- 根据key排序
LinkedHashMap<String,String> result = new LinkedHashMap<>();
Map<String,String> map = new HashMap<>();
map.entrySet().stream()
.sorted(Map.Entry.comparingByKey())
.forEachOrdered(x->result.put(x.getKey(),x.getValue()));
- 根据value排序
LinkedHashMap<String, Integer> valueResult = new LinkedHashMap<>();
Map<String, Integer> map = new HashMap<>();
map.entrySet().stream()
.sorted(Map.Entry
.comparingByValue())
.forEachOrdered(b->valueResult.put(b.getKey(), b.getValue()));
key和value能够排序的前提是: 值都是可比较类型,比如基本数据类型或者string,如果是List就会报错了