递归:方法定义中调用方法本身的现象 //用递归实现 5的阶乘 public class DiGuiDemo { public static void main(String[] args) { int i = diGui(5); System.out.println(i); } public static int diGui(int sum) { if (sum == 1) {//结束条件 return 1; } else { return sum * diGui(--sum); } } }
import java.io.File; //递归遍历目录下指定后缀名结尾的文件名称 //获取D盘下所有的.java后缀的文件 public class DiGuiDemo2 { public static void main(String[] args) { //将D盘封装成File对象 File file = new File("D:\\"); digui(file); } public static void digui(File file) { if (file != null) { File[] files = file.listFiles(); if (files!=null){ for (File file1 : files) { if (file1.isFile()) { if (file1.getName().endsWith(".java")){ System.out.println(file1.getName()); } }else { digui(file1); } } } } } }