递归是一种算法,自己调用自己。
package com.dhcc.project;
public class Demo6 {
public static void main(String[] args) {
// 递归指方法不断调用自身的情况
int sum = Demo6.sum1(3);
System.out.println(sum);
}
static int sum1(int n) {
if (n == 1) {
return 1;
}
return n + sum1(n - 1);
}
}
这个代码执行过程,int n=3 return 3+sum1(2)
int n=2 return 2+sum1(1)
int n=1 return 1;
每调用一次sum1方法,就会产生一个局部变量 n
每次调用方法返回给上一级方法