您知道方法可以调用其他方法。但是,方法也可以调用自己。从函数主体调用函数的过程称为递归。
递归的主要优点是在编写清晰、简短和简单的程序方面非常有用。
要理解此概念,请考虑阶乘函数定义为:
n != 1 * 2 * 3 * 4 * ... * n
此同阶乘函数可定义为:
n! = (n-1)!* n where n > and 0 != 1
n!是一个递归定义,因为在使用(n-1)!时它引用其本身。当 n = 0 时,n!的值为1,当n > 0 时,n!的值用n的较小值定义。
如果必须使用递归计算3!,则先用2!定义3!:
3! =( 3 * 2! )
现在,用1!定义2!:
3!=(3 * ( 2 * 1! ))
现在,0!定义为1.因此,该表达式变为:
3! = (3 *