java递归的使用,面试必备详解编程语言

java递归的使用,面试必备详解编程语言
一、求阶乘
1、求阶乘5
2、退出条件   if(a == 1)//退出的条件
3、规律:n*(n-1)
public class Test1{
    public static int test1(int a){
        if(a == 1)//退出的条件
        {
            return 1;
        }
        return a*asd(a-1);//5*4的阶乘//5*4*3的阶乘//5*4*3*2的阶乘//5*4*3*2*1的阶乘
    }
    public static void main(String[] args){
        System.out.println(test1(5));
    }
}
二、求斐波那契数
1、斐波那契数:1、1、2、3、5、8、13、21、……
2、if(a==1 || a==2)//退出条件
3、规律: 第三项开始后一项是前两项之和
public class Test2{
    public static int test2(int a)
    {
        if(a==1 || a==2)//退出条件
        {
            return 1;
        }
        return asd(a-1) + asd(a-2);// 第三项等于前两项之和
    }
    public static void main(String[] args){
        System.out.println(test2(9));//求出第9个数
    }
}
三、用递归来删除文件夹及文件
public class Test3{
    public static void test3(File file){
        if(file.isFile())//判断file是否是一个文件
        {
            file.delete();// 如果是那么就把他删了
        }else{
            File[] files = file.listFiles();//如果不是 那么获取他下面的文件
            
            for(File file2 : files){
                test3(file2);
                files.delete();//删除自身文件夹
            }
        }
    }
    public static void main(String[] args){
        File file = new File(“F://a”);
        if(file.exists()){
            File[] files = file.listFiles();//获取文件夹里面的所有文件
            for(int i=0; i< files.length; i++){
                test3(files[i]);
                files[i].delete();
            }
            file.delete();//删除自身文件夹
        }
    }
}
 

java递归的使用,面试必备详解编程语言

转载请注明来源网站:blog.ytso.com谢谢!

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/14777.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论