java中递归

递归的定义 : 指在当前方法内调用自己的这种现象

递归的三个条件:

边界条件

递归前进段

递归返回段

当边界条件不满足时,递归前进;当边界条件满足时,递归返回。

示例代码:

public void method(){

//在当前方法内调用自己

扫描二维码关注公众号,回复: 5306947 查看本文章

method();

}

 

递归分为两种,直接递归和间接递归。

直接递归称为方法自身调用自己。间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法。

  1. 递归的代码演示,计算1-n之间的和,使用递归完成

public class DiGuiDemo {

public static void main(String[] args) {

//计算1~num的和,使用递归完成

int n = 5;

int sum = getSum(n);

System.out.println(sum);

}

public static int getSum(int n) {

if(n == 1){

     return 1;

}

   return n + getSum(n-1);

}

}

  1. 代码执行流程图解

 

注意:递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出。

在递归中虽然有限定条件,但是递归次数不能太多。否则也会发生栈内存溢出。

猜你喜欢

转载自blog.csdn.net/weixin_39559282/article/details/82228600