我想将对象列表转换为 map ,其中 map 的键和值作为属性位于列表中对象内。
这里是这种转换的 Java 7 片段:
private Map<String, Child> getChildren(List<Family> families ) {
Map<String, Child> convertedMap = new HashMap<String, Child>();
for (Family family : families) {
convertedMap.put(family.getId(), family.getParent().getChild());
}
return convertedMap;
}
最佳答案
它应该类似于...
Map<String, Child> m = families.stream()
.collect(Collectors.toMap(Family::getId, f -> f.getParent().getChild()));
关于Java 8 List<T> 到 Map<K, V>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26049187/