递归
1.递归的能力在于用有限的语句来定义对象的无限集合
2.递归结构包括两部分
(1)递归头:什么时候不调用自身方法。如果没有头,将陷入死循环。
(2)递归体:什么时候需要调用自身方法。
package com.zmq.method;
public class DemoFive {
public static void main(String[] args) {
System.out.println(f(6));//720
}
//阶乘 6!=6*5*4*3*2*1 1!=1
public static int f(int n){
if (n == 1){
return 1;
}else{
return n*f(n-1);
}
}
}
注:能不用递归就不用递归,效率低,基数过大时,容易造成内存崩溃。