java代码:下列代码的作用是什么?请简述,面试题

importjava.io.File;classTest12{publicstaticvoidmain(String[]args){showDirectory(newFi... import java.io.File;
class Test12{
public static void main(String[] args) {
showDirectory(new File("/Users/Hao/Downloads"));
}
public static void showDirectory(File f) {
_walkDirectory(f,0);
}
private static void _walkDirectory(File f,int level) {
if(f.isDirectory()) {
for(File temp:f.listFiles()) {
_walkDirectory(temp,level+1);
}
}eles{
for(int i=0;i<level-1;i++) {
System.out.println("\t");
}
System.out.println(f.getName());
}
}
}
展开
 我来答
澈丶233
2019-10-16 · TA获得超过169个赞
知道小有建树答主
回答量:446
采纳率:94%
帮助的人:104万
展开全部

该程序的作用:进到指定目录,输出这个目录以及子目录下所有文件的文件名,通过\t的行数来区别层级。

为了测试,我建立了这么一些文件:

D:\test

D:\test\test1

D:\test\test2

D:\test\test3.txt

D:\test\test1\t1.txt

D:\test\test1\t2.txt

D:\test\test2\t3.txt

其中,根路径为D:\test,其level为0;

level1中包含文件夹test1、文件夹test2和文件test3;

level2中包含文件t1.txt(属于文件夹test1)、文件t2.txt(属于文件夹test1)、文件t3.txt(属于文件夹test2)。

则该程序的输出为:

其中:

t1.txt前有1行\t,说明t1.txt位于第2层级

t2.txt前有1行\t,说明t2.txt位于第2层级

t3.txt前有1行\t,说明t3.txt位于第2层级

test3.txt前没有\t,说明test3.txt位于第1层级

符合预期。


另外为了再明显一些,我给输出再加点东西,这样会不会更明显一些:

其中,t1.txt位于的大括号中有一行\t和它的名字,表明了它确实在第2层级中,t2、t3同t1;test3.txt位于的大括号中只有它的名字表明了它确实在第1层级中

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式