版权声明:如需转载请标明出处 https://blog.csdn.net/yj201711/article/details/83687829
方法的递归调用
指的是方法自己调用自己
在方法的递归调用时:一定要有一个结束条件
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;
}
}