【发布时间】:2015-02-11 10:29:24
【问题描述】:
我有以下对象和地图:
MyObject
String name;
Long priority;
foo bar;
Map<String, List<MyObject>> anotherHashMap;
我想将地图转换为另一个地图。结果映射的键是输入映射的键。结果映射的值是我的对象的属性“名称”,按优先级排序。
ordering 和提取名称不是问题,但我无法将其放入结果图中。我用旧的 Java 7 方式来做,但如果可以使用流式 API,那就太好了。
Map<String, List<String>> result = new HashMap<>();
for (String identifier : anotherHashMap.keySet()) {
List<String> generatedList = anotherHashMap.get(identifier).stream()...;
teaserPerPage.put(identifier, generatedList);
}
有人知道吗?我试过了,但卡住了:
anotherHashMap.entrySet().stream().collect(Collectors.asMap(..., ...));
【问题讨论】:
-
意图不明确。你能解释一下你想做什么吗?
-
这个解释更好吗?
-
您生成的地图值应该是多少?前一个密钥中每个
name的列表?
标签: java hashmap java-8 java-stream