递归:程序调用自身的编程技巧。
public class Demo05 {
public static void main(String[] args) {
Demo05 demo05 = new Demo05();
System.out.println(demo05.f(5));
}
//求阶乘:递归思想
public int f(int n){
if (n==1){
return 1;
}else{
return n*f(n-1);
}
}
}
运算实质:
如传入f(5),即当n不等于1,于是return n*f(n-1)
5*f(5-1) = 5*f(4),继续判断
f(4) = 4*f(3)
f(3) = 3*f(2)
f(2) = 2*f(2)
f(2) = f(1) = 1
于是f(2) = 2,f(3) = 6,f(4) = 24
f(5) = 5 *f(4) = 120
基于学习(狂神说Java)总结,如有不同见解,请留言!!!