tak*_*shi 11 java lambda java-8 java-stream
Java 8中有更好的方法可以在Map中为List添加值吗?
在java 7中我会写:
Map<String, List<Integer>> myMap = new HashMap<>();
...
if (!myMap.containsKey(MY_KEY)) {
myMap.put(MY_KEY, new ArrayList<>());
}
myMap.get(MY_KEY).add(value);
Run Code Online (Sandbox Code Playgroud)
Flo*_*own 35
您应该使用该方法Map::computeIfAbsent来创建或获取List:
myMap.computeIfAbsent(MY_KEY, k -> new ArrayList<>()).add(value);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11259 次 |
| 最近记录: |