关于Java 8:使用forEach修改map的值

modify value of map with forEach

我有一个HashMap,想要通过附加另一个字符串" hello"来更改值(它是一个字符串)。

1
2
HashMap<User, String> all = new HashMap<>();
mymap.forEach((k, v) -> v = v +" hello");

但是,它不起作用," mymap"未更改。 怎么了?


这是Map#replaceAll的工作:

1
mymap.replaceAll((k, v) -> v +" hello");