package cn.dali3.code14;
/*递归分类:
* 直接递归
* 方法直接递归就是自己调用自己
* 间接递归
* A方法调用B方法,B方法调用A方法。这就是间接递归
* 注意:
* 1.构造方法不可以递归。
* 因为构造方法是创建对象用的,递归后会创建很多对象,导致堆内存溢出。
* 2.递归要有条件限制
* 递归必须有条件限制让他停下来,否则会栈内存溢出
* 3.递归的次数不能太多
* 理由同上
* 下段程序是使用递归遍历一个路径所有的文件和文件夹的例子*/
import java.io.File;
public class Demo02 {
public static void main(String[] args) {
getAllFiles("C:\\Users\\Administrator\\Desktop\\A");
}
public static void getAllFiles(String str) {
File f1 = new File(str);
File [] file =f1.listFiles();
for (File file1 : file) {
System.out.println(file1);
if(file1.isDirectory()){
getAllFiles(file1.getPath());
}
}
}
}
递归
最新推荐文章于 2021-02-27 02:43:05 发布