通过File的构造函数来创建一个文件对象,使用前并没有明确区分文件与目录
File file1=new File("E:/file/my/world");//文件夹(目录)
File file2=new File("E:/file/my/hello2/hello2.txt");//文件
对于listFiles方法,理论上只能对目录使用,用于获取该目录下的所有文件和目录
但listFiles方法属于File类,使用前并不知道要操作的是文件还是目录
于是对于file1对象进行了尝试
File[] files1=file1.listFiles();//文件
Objects.isNull(files1)-->true
结果发现变量files1实际为null
接着又想到那如果是空文件夹,会是什么情况,为什么在使用的过程中遍历到了却没有报错呢
File[] files2=file2.listFiles();
Objects.isNull(files2)-->false//空文件夹
经过验证发现即使是空的目录对象使用listFiles也会得到一个File[]对象,只是长度为0,而当指定的目录不存在或权限不足的情况下,也可能返回null