JAVA基础(18)---方法的递归调用

方法的递归调用

                                                指的是方法自己调用自己

在方法的递归调用时:一定要有一个结束条件

public class FunctionDemo4{


	public static void main(String[] args){
		FunctionDemo4 fun = new FunctionDemo4();
		int result = fun.add(5);
		System.out.println(result);
		int sum = fun.sum(5);
		System.out.println(sum);
		int res = fun.jiecheng(5);
		System.out.println(res);
	}
	//需求:计算1--N之间的整数的和
	public  int add(int n){
		int sum= 0;
		for(int i = 1 ; i <= n ; i++){
			sum  += i;
		
		}
		return sum;
	
	}
	//使用递归来实现计算1--n之间的整数的和
	public int sum(int n){
		int res = 0;
		if( n == 1){
			res = 1;
		}else{
			/* res = 5 + sum(4) 4 + 3+2 +1
				sum(4)  =4 + sum(3) = 3+ 2+ 1
				sum(3) =3 + sum(2)=2+1
				sum(2) = 2 + 1
			*/
			res = n + sum(n - 1); 
		}
		return res;
	}
	/*
		计算n的阶乘 res = n *(n-1) *(n -2)...1
	*/
	public int jiecheng(int n){
		
		int res = 0;
		if (n == 1){
			res = 1;
		}else{
			
			res = n * jiecheng(n - 1);
		
		}
		return res;
	
	}
}

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值