我有一个HashMap
看起来像这样的嵌套:HashMap<String, HashMap<String,Object>>
.
我创建了一个add
方法来填充HashMap
private void add(String currentVersion, String targetVersion, Object object) {
HashMap <String, HashMap <String, Object >> nestedMap = definedUpdatePlans.putIfAbsent(currentVersion, new HashMap());
if (nestedMap == null) {
nestedMap = definedUpdatePlans.get(currentVersion);
}
nestedMap.put(targetVersion, object);
}
如您所见,如果不存在,我将添加嵌套地图。如果它已经存在,我将获取当前值作为返回值。如果它不存在,则putIfAbsent
返回null
需要我进行空检查并手动获取来填充变量。
这似乎不是很干净,但我不知道更好的方法。
有没有办法在不存在的情况下添加价值,并以更流畅的方式继续使用新的或现有的价值?