A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 何创 中级黑马   /  2012-12-25 14:38  /  1874 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

看课外书 突然看到这样一个问题:没想明白~
编写一个程序,在命令行中以树状结构展现特定的文件夹及其子文件夹.代码是这样的:
import java.io.*;
public class FileList { public static void main(String[] args)
{
File f = new File("d:/A");
System.out.println(f.getName());
tree(f, 1);
}  
private static void tree(File f, int level)
{   
String preStr = "";
for(int i=0; i<level; i++) {   preStr += "    ";
  }   
File[] childs = f.listFiles();  
for(int i=0; i<childs.length; i++)
{   
System.out.println(preStr + childs[i].getName());
  if(childs[i].isDirectory())
{   
tree(childs[i], level + 1);     
   }
     }
   }
}
我有个地方不明白:File[] childs = f.listFiles();这句中得到的childs[]数组是那个文件夹??

评分

参与人数 1技术分 +1 收起 理由
崔政 + 1

查看全部评分

5 个回复

倒序浏览
我意思是问它得到的是哪个文件夹??为什么啊···
回复 使用道具 举报
File f = new File("d:/A"); File[] childs = f.listFiles();
第一次得到的是d:/A里面的文件(包括文件夹),之后迭代的是d:/A里面的文件夹
回复 使用道具 举报
{:soso__8961432591078930798_3:} 好好学吧 楼主
回复 使用道具 举报
加油学习啊。。。
回复 使用道具 举报
递归的思想,如果是文件夹,继续递归,如果不是文件夹。就算了。
File[] childs = f.listFiles();
childs是File对象数组,里面是f这个文件夹里的文件和文件夹
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马