递归是一种在方法中调用自身的现象。在递归中,必须有条件限制,以确保递归能够终止,否则可能会导致栈内存溢出。递归的注意事项包括:
- 递归一定要有条件限制,保证能够停止。
- 递归次数不能过多,以免造成性能问题。
- 构造方法不应该使用递归。
举个栗子
public class RecursionExample {
// 计算阶乘的递归函数
static int factorial(int n) {
// 基本情况:0的阶乘为1,1的阶乘也为1
if (n == 0 || n == 1) {
return 1;
}
// 递归调用:n的阶乘 = n * (n-1)的阶乘
return n * factorial(n - 1);
}
public static void main(String[] args) {
int number = 5;
int result = factorial(number);
System.out.println(number + " 的阶乘是 " + result);
}
}