黑马程序员技术交流社区
标题:
关于递归的问题
[打印本页]
作者:
我为你着迷
时间:
2014-12-2 20:30
标题:
关于递归的问题
本帖最后由 我为你着迷 于 2014-12-2 20:34 编辑
import java.io.*;
class FileDemo4
{
public static void main(String[] args)
{
File dir=new File("d:\\java0219");
showDir(dir);
}
public static void showDir(File dir)
{
File[] files=dir.listFiles();
for(int x=0;x<files.length;x++)
{
if(files[x].isDirectory())
showDir(files[x]);
else
System.out.println(files[x]);
}
}
}
复制代码
大家好,这句话showDir(files[x]);我没看懂,就是为什么传递的是files[x]呢?或者
谁可以帮我把这段代码读一下呀?到底是怎么执行的呢?谢谢了。黑马币无限奉上啊。
作者:
air鹏
时间:
2014-12-2 20:50
files[x]代表文件夹中的文件对象
判断是文件对象是是一个目录 如果是的话就将目录对象传递到showDir(File dir)方法中 其实相当于打开文件夹
知道文件对象不是目录时,就将文件打印
作者:
kerner
时间:
2014-12-2 22:45
文件遍历,其实就是递归的实际应用,理解了递归调用就不难理解了,可以看着打印的结果理解。
作者:
Mr.Ni
时间:
2014-12-2 23:05
showDir函数接收的参数类型是不是File类型的对象?
files是不是File类对象的数组?
那files[x]不就File类对象数组中一个File类对象么
不就符合showDir的接收类型么
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2