java - 关于 Files.notExists 的 SonarLint 规则

标签 java io sonarqube nio

SonarLint 说我应该使用 if(programFolder.toFile().exists) 而不是 if(Files.exists(programFolder))。我一直认为鼓励使用较新的 nio Path 而不是 io File。

有人可以解释一下为什么 SonarList 鼓励在这种情况下使用文件而不是路径吗?

最佳答案

如果您单击问题列表中的问题,您可以直接从 SonarLint 访问规则的描述。这是 rule 描述的链接。

如果您查看描述的最后一部分,其中链接到两个 JDK 错误,解释了正在发生的情况。基本上,此实现的性能很差,因为当文件不存在时,它会用错误填充不必要的堆栈。

关于java - 关于 Files.notExists 的 SonarLint 规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41557592/

相关文章:

java - Web服务器如何识别Java中的请求?

java - Java "public static void main(string[] args)"是创建 main 方法的唯一方法吗?

java - Sonar 管。无法显示代码覆盖率

java - 此 Sonar 规则未触发

java - JsonParseException 反序列化对象失败

java - 破解远程/虚拟磁盘上的 "real"Java 刷新

java - Java中如何使用FileInputStream

C - 字符数组的数组

c - c 中的 null 类型和编译器错误

sonarqube - 将 Slather 报告发布到 SonarQube