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''鍵來獲取字段的值,它是按照預期寫入的 –