java 递归模式 遍历给定文件

来源:互联网 发布:太阳能电池知乎 编辑:程序博客网 时间:2024/05/16 18:02
package com.uniteque;
import java.io.File;
public class TestRecursive {

/**
* @param args
* 递归   思想
*/
public static void main(String[] args) {
showAllFile("D:\\JAVA\\apache-ant-1.8.3\\etc");

}
public static void showAllFile(String filepath){
File file = new File(filepath);
File[] lst = file.listFiles();
for(int i=0; i<lst.length; i++){
if(lst[i].isDirectory()){   //注意只要是目录再次调用showAllFile方法(内部自己行调用)  可以自己断点看一下执行过程
showAllFile(lst[i].getPath());      //内部调用完之后还是会 回到for循环
}else{
System.out.println(lst[i].getPath());
}

}

               //递归思路:内部调用,把遍历到的目录 就去调用showAllFile方法

//最好自己dug看下,假设lst.length=10    当遍历到i=3 刚好此时是一个目录,就会再次调用showAllFile方法,

               //循环不会终止,i=3目录遍历完之后, 会回到最初的for循环,接着从i=4开始遍历


}


}
原创粉丝点击