鉴于一个Map<String, Person>地方的人有一个String getName()就可以了(等)的方法,我怎么能转Map<String, Person>成Map<String, String>,其中String从调用获得Person::getName()?
我会使用Pre-Java 8
Map<String, String> byNameMap = new HashMap<>();
for (Map.Entry<String, Person> person : people.entrySet()) {
byNameMap.put(person.getKey(), person.getValue().getName());
}
Run Code Online (Sandbox Code Playgroud)
但是我想用流和lambdas来做.
我无法看到如何以功能样式执行此操作:Map/HashMap不实现Stream.
people.entrySet()返回Set<Entry<String, Person>>我可以流过的内容,但是如何Entry<String, String>向目标地图添加新内容?