File[] files = dir.listFiles();//返回的是直接子目录(文件)的对象
if(files!=null && files.length>0){
for(File file : files){
if(file.isDirectory()){
//递归
ListDirectory(file);
}
else{
System.out.println(file);
}
}
}第二个if这里有点不明白,ListDirectory(file);是怎么操作的?
就是方法调用而以啊,你这段代码是不是写在ListDirectory()中啊,接收参数是个文件,整个方法逻辑就是
1、传一个文件路径dir进来,如果传进来的是文件夹,取出文件夹中的所有文件进行遍历
2、遍历时将每个文件进行判断,如果发现是文件夹,执行递归,又回到第一步。如果不是文件夹,就输出
如果是目录,则再从这一层开始,再执行一遍ListDirectory()方法。