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的作用为,当遍历至文件夹时,在打印台打出一个"="字符串,以区分路径的层级。

本文介绍了一个使用Java实现的递归方法,用于遍历指定目录下的所有子目录及文件,通过递归调用和字符串参数来区分不同层级的目录。

4069

被折叠的 条评论
为什么被折叠?



