(javase)使用递归与不使用递归计算N的阶乘

/*    先不使用递归,计算N的阶乘
    5的阶乘:
      5 * 4 * 3 * 2 * 1
*/
/*
public class RecursionTest04
{
    public static void main(String[] args) 
    {
        int n = 5;
        int retValue = method(n);
        System.out.println(retValue);//120
    }
    public static int method(int n){
        int result = 1;
        for(int i=n;i>0;i--){
            result *= i;
        }
        return result;
    }
}*/

//递归方式
//必须记住,面试题出现的几率很高。
public class RecursionTest04
{
    public static void main(String[] args) 
    {
        int n = 5;
        int retValue = method(n);
        System.out.println(retValue);//120
    }
    public static int method(int n){
        if(n == 1){
            return 1;
        
        }
        return n * method(n - 1);
    }
}
//4 + 3 + 2 + 1
//4 * 3 * 2 * 1
 

上一篇:javaSE笔记 Stream流 生成方式 + 中间操作 + 终结操作 + 收集操作


下一篇:javaSE总结01