Null Dereference - 使用 HashMap.EntrySet() 强化扫描
Null Dereference - Fortify scan with HashMap.EntrySet()
我正在使用 entrySet() 从 Hashmap 中检索键和值。代码工作正常,但强化扫描抱怨地图点 entrySet 处的 Null Dereference。下面是代码示例。请提出建议。
我尝试对 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()));
}
}
}
我没有使用 map.entrySet,而是使用了 forEach 方法,它在内部处理键和值的迭代。
paramMap.forEach((key, value) ->{
if (key.name().startsWith("xyz")){
if (input.charAt(value - 1) == '1'){ list.add(key.name().substring(interactionPrefix.length()));
}
});
我正在使用 entrySet() 从 Hashmap 中检索键和值。代码工作正常,但强化扫描抱怨地图点 entrySet 处的 Null Dereference。下面是代码示例。请提出建议。
我尝试对 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()));
}
}
}
我没有使用 map.entrySet,而是使用了 forEach 方法,它在内部处理键和值的迭代。
paramMap.forEach((key, value) ->{
if (key.name().startsWith("xyz")){
if (input.charAt(value - 1) == '1'){ list.add(key.name().substring(interactionPrefix.length()));
}
});