递归是以相似的方式重复项目的过程。同样适用于编程语言中,如果一个程序可以让你调用同一个函数被调用的函数,递归调用函数内使用如下。
func recursion() {
recursion() /* function calls itself */
}
func main() {
recursion()
}
Go编程语言支持递归,即要调用的函数本身。但是在使用递归时,程序员需要谨慎确定函数的退出条件,否则会造成无限循环。
递归函数是解决许多数学问题想计算一个数阶乘非常有用的,产生斐波系列等
以下是一个例子,它计算阶乘用于使用一个递归函数由给定数:
让我们编译和运行上面的程序,这将产生以下结果:
Factorial of 15 is 2004310016
以下是另一个例子,其产生斐波串联使用一个递归函数由给定一个数: