java 递归和非递归实现 计算“1+2+3+。。。+n”

代码如下


public class RecursionMethod {
    public int addNorecursion(int n)
    {
        int result = 0;
        for(int i=0;i<=n;i++)
        {
            result+=i;
        }
        return result;
    }
        //以递归方式实现“1+2+3+。。。+n”
        public int addRecursion(int n)
        {
            //递归出口,当n小于1时函数就会逐层返回
            if(n<=1)return n;
            return n + addRecursion(n-1);
        }
        
        
    
    public static void main(String[] args) {
        RecursionMethod test=new RecursionMethod();
        //调用非递归方式计算
        int result = test.addNorecursion(10);
        System.out.println("非递归计算1+2+3+。。。+10结果:"+result);
        //调用递归方法计算
        result=test.addRecursion(10);
        System.out.println("递归计算1+2+3+。。。+10结果:"+result);

    }

}
 

 

运行结果

 

java 递归和非递归实现 计算“1+2+3+。。。+n”