4.3方法的递归调用

递归调用:方法自己调用自己的方法,进行递归操作时必须满足条件:1、递归调用必须有结束条件。2、每次调用的时候都需要根据需求改变传递的参数内容。
范例:实现1~100数字累加

public class Sixtythree {
       public static void main(String[] args) {
		System.out.println(sum(100));//累加
	   }
       /**
        * 数据的累加操作,,传入一个数据累加操作的最大值,而后每次进行数据累加递减,将一直累加到计算数据为1;
        * @param num要进行累加的数
        * @return累加的结果
        */
       public static int sum(int num) {
    	   if(num==1) {
    		   return 1;
    	   }
    	   return num+sum(num-1);//递归调用
       }
}
执行结果
5050

范例:计算1!+2!+3!…+90!

public class Sixtyfour {
       public static void main(String[] args) {
		System.out.println(sum(90));
		
	}
       public static double sum(int num) {
			if(num==1) {
				return factorial(1);
			}
			return factorial(num)+sum(num-1);
		}
		public static double factorial(int num) {
			if(num==1) {
				return 1;
			}
			return num*factorial(num-1);
		}
}

执行结果
1.502411534554385E138
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值