public class Test1 {
public static void method(File file,String s) //字符串s为区分目录层级作用
{
File[] files=file.listFiles();
for (File file1 : files) {
if (file1.isDirectory())
{
System.out.println(s+file1.getName());
method(file1,"="+s); //递归调用
}
else
System.out.println(s+file1.getName());
}
}
public static void main(String[] args) {
method(new File("D:\\Downloads"),"=>");
}
}
一、通过file类对象的listFiles方法,将路径"D:\Downloads"下的所有目录及文件对象赋给了files数组;
二、运用增强for循环,遍历files数组中的文件及目录,若为目录则继续递归调用method本方法;若为文件则输出该文件名;
三、method方法中的字符串类型形参s的作用为,当遍历至文件夹时,在打印台打出一个"="字符串,以区分路径的层级。