【发布时间】:2017-04-02 00:26:05
【问题描述】:
我的地图是这样的
private Map<String, LinkedHashSet<String>> map = new HashMap<>();
在传统方法中,我可以通过如下键检查为地图添加价值
public void addEdge(String node1, String node2) {
LinkedHashSet<String> adjacent = map.get(node1);
if (adjacent == null) {
adjacent = new LinkedHashSet();
map.put(node1, adjacent);
}
adjacent.add(node2);
}
使用 java 8,我可以做这样的事情,使用这个我也得到相同的输出。
map.compute(node1, (k,v)-> {
if(v==null) {
v=new LinkedHashSet<>();
}
v.add(node2);
return v;
});
有没有更好的方法来处理 java 8?
【问题讨论】:
标签: java-8