public static void main(String[] args) {
File file=new File("D:\\idea");
File[] files = file.listFiles();
if (file.exists()){
System.out.println(file.getName()+"\\");
Output(files);
Output(null);
}else {
System.out.println("文件不存在");
}
}
static void Output(File[] files) {
if (files==null) return;
for (File file:files
) {
if (file.isDirectory()){
System.out.println(" "+file.getName()+"\\");
Output(file.listFiles());
}else if (file.isFile()){
System.out.println("\t"+file.getName());
}
}
}
对象为空就会报空指针异常。
当传入null时,遍历就会报空指针异常了。
for (File file:files)
不空就不会报异常,除非你自己抛个异常出来
file.exists() 都已经判断文件是否存在 怎么 抛异常