此代码中可能的空指针解除引用错误:
Full match 12-19 `AB000CD`
Group 1. 16-17 `0`
如何解决这些问题?
答案 0 :(得分:5)
您检查dir.list()
不为空。之后你会对dir.list()
进行其他调用,并假设在这种情况下不能为空。
SonarJava试图告诉你,即使dir.list()
首先没有为空,它也可能在第二次/第三次调用时变为空。
要解决此问题:
dir.list()
的结果保存在变量这也称为提取变量重构,它还有其他好的效果。如果您不希望dir.list()
的结果在调用之间发生变化,那么您也会提高性能,因为程序不需要再次访问文件系统来生成内容。目录