【发布时间】:2018-05-12 22:04:56
【问题描述】:
所以我有一个Map<String, Map<String, List<Person>>>,我想将其转换为Map<Integer, Map<String, Integer>>,其中第一个整数键代表数字 1,2,3 .....(当前条目的索引取自第一个地图)第二个整数给了我List<Person> 的大小。
内部映射中的字符串保持不变....
首先我只是尝试用列表的大小替换地图中的第二个整数,但它不起作用.....
Map<String, Map<String, List<Person>>> map2 =...
Map<String, Map<String, Integer>> map = map2.entrySet().stream().collect(
Collectors.groupingBy(p -> p.getKey(), Collectors.toMap(p -> p.getValue().getKey(), p->p.getValue().values().size())));
【问题讨论】:
-
地图没有定义的迭代顺序,因此当前条目的索引是不确定的。你到底想做什么?
标签: java lambda java-8 java-stream