2
假设我们有以下功能:的Java 8流 - 映射将
public Map<String, List<String>> mapListIt(List<Map<String, String>> input) {
Map<String, List<String>> results = new HashMap<>();
List<String> things = Arrays.asList("foo", "bar", "baz");
for (String thing : things) {
results.put(thing, input.stream()
.map(element -> element.get("id"))
.collect(Collectors.toList()));
}
return results;
}
有没有一些方法,我可以通过结合"id"
到Map::get
方法参考打扫一下吗?
是否有更多的stream-y方法来编写此功能?
我不明白这个功能的目的。它不能编译,因为你没有关闭result.put(如果我添加一个,它会创建一个映射,其中映射中的每个元素映射到为每个项目创建的相同列表。 – WillShackleford
可能'element - > element .get(thing)'was intended。 –
从列表中的每个映射中,我想要使用''id''键来获取字段的值,它是按照预期写入的 –