递归
1、递归是非常消费内存的,递归算法可以不用的时候尽量不用
2、不正确的使用递归会出现java.lang.StackOverflowError,栈内存溢出出去
错误无法挽回,jvm会停止工作
3、递归必须要有递归必须有结束条件,没有结束条件一定会发生栈内存溢出错误
4、递归即使有了结束条件也有可能发生栈内存溢出错误,因为递归的太深了
public class RecursionTest {
public static void main(String[] args) {
int n =10;
int retValue = method(n);
//结果
System.out.println(retValue);
}
public static int method(int n){
if(n==1){
return 1;
}
//调用递归
return n * method(n-1);
}
}