Map<String, List<Object>> 按key降序排列
时间: 2023-09-24 21:02:52 浏览: 100
封装ResultSet结果集
可以使用Java8的Stream API来实现。具体实现方法如下:
```
Map<String, List<Object>> map = ... // 待排序的Map
Map<String, List<Object>> sortedMap = map.entrySet().stream()
.sorted(Map.Entry.<String, List<Object>>comparingByKey().reversed())
.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue,
(oldValue, newValue) -> oldValue, LinkedHashMap::new));
```
解释一下上述代码的实现逻辑:
1. 调用Map的entrySet()方法将Map转换为一个包含键值对的Set集合。
2. 调用Stream API的sorted()方法并传入一个Comparator,按照键值对的键(即Map的key)进行降序排序。
3. 调用Stream API的collect()方法将排序后的键值对重新组装为一个新的Map。
4. 使用LinkedHashMap作为新Map的实现类,以保证插入顺序。
最终得到的sortedMap就是按照key降序排列的Map。
阅读全文