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/