递归(基础)
作者:互联网
public class Dir16 { /* * 使用递归计算1-n之间的和 * */ /** * 定义一个方法,使用送归计算1-n之间的和1+2+3+. ..+n * n+(n-1)+(n-2)+...+1 * 已知: * 最大值:n * 最小值:1 * 使用递归必领明确: * 1.递归的结束亲忤 * 获取到1的时候结束 * 2.递归的目的 * 获取下—个被加的数字(n-1) */ public static void main(String[] args) throws IOException { int s=sum(100); System.out.println(s); } public static int sum(int n){ // 获取到1的时候结束 if (n==1){ return 1; } //获取下—个被加的数字(n-1) return n+sum(n-1); }//1 2 3 100+99+98....+1 }
//递归计算5的阶乘
public static void main(String[] args) throws IOException {
int s=sum(5);
System.out.println(s);
}
public static int sum(int n){
if (n==1){
return 1;
}
return n*sum(n-1);
}
递归遍历文件夹中所有文件
File file =new File("d:/Auser"); getAllFile(file);//getAllFile:获取所有文件 } /** * 定义一个方法,参数传递File类型的目录 * 方法中对目录进行遍历 * @param dir */ public static void getAllFile(File dir){ File[] files=dir.listFiles(); for (File f :files){ //对遍历得到的File对象f进行判断,是否是文件夹 if (f.isDirectory()){ //f是文件夹,这继续遍历这个文件夹 //我们发现getAllFile方法就是传递文件夹,遍历文件夹得方法 //所以直接调用getAllFile方法即可递归(自己调自己) getAllFile(f); }else { System.out.println(f); } }
标签:递归,int,sum,基础,文件夹,File,getAllFile,public 来源: https://www.cnblogs.com/Gu1015/p/14316567.html