我正在使用entrySet()从Hashmap中检索键和值。代码工作正常,但强化扫描抱怨地图点entrySet的Null Dereference。下面是代码示例。请提出建议。
我试图将null检查放在entry.getKey和entry.getValue()上。
我也在paramMap.entrySet()上尝试了空检查
for (Entry<EnumType, Integer> entry : paramMap.entrySet()) {
if (entry.getKey().name().startsWith("xyz")) {
if (input.charAt(entry.getValue() - 1) == '1') {
list.add(entry.getKey().name().substring(interactionPrefix.length()));
}
}
}
答案 0 :(得分:0)
我使用了forEach方法,而不是使用map.entrySet,它在内部负责对键和值的迭代。
paramMap.forEach((key, value) ->{
if (key.name().startsWith("xyz")){
if (input.charAt(value - 1) == '1'){ list.add(key.name().substring(interactionPrefix.length()));
}
});