JAVA stream集合List<Map>转二维集合Map<String,Map<String,Object>>

💖简介
将一个
List<Map>转换为一个二维的Map结构通常意味着我们需要创建一个Map<K, Map<K, V>>。这里,外部的Map使用某个键(比如列表中每个Map的唯一标识符)来指向内部的Map,而内部的Map则保持了原始Map中的键值对。
假设我们有一个
List<Map<String, String>>类型的数据,我们想要将其转换成Map<String, Map<String, String>>。这里的逻辑是,外层Map的键是每个内部Map的唯一标识符(例如,可以是内部Map中的一个特定键的值),而内层Map就是原List中的每个Map。
JAVA stream集合List<Map>转二维集合Map<String,Map<String,Object>>
Map<String, Map<String, Integer>> result = list.stream()
.collect(Collectors.groupingBy(e -> e.get("date"), LinkedHashMap::new,
Collectors.groupingBy(e -> e.get("area"), LinkedHashMap::new,
Collectors.summingInt(e -> Integer.parseInt(e.get("count"))))));
结束

浙公网安备 33010602011771号