Null Dereference - 使用 HashMap.EntrySet() 强化扫描

Null Dereference - Fortify scan with HashMap.EntrySet()

我正在使用 entrySet() 从 Hashmap 中检索键和值。代码工作正常,但强化扫描抱怨地图点 entrySet 处的 Null Dereference。下面是代码示例。请提出建议。

  1. 我尝试对 entry.getKey 和 entry.getValue() 进行空检查。

  2. 我也在 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()));
}
});