首页 » iOS编程基础:Swift、Xcode和Cocoa入门指南 » iOS编程基础:Swift、Xcode和Cocoa入门指南全文在线阅读

《iOS编程基础:Swift、Xcode和Cocoa入门指南》2.9 递归

关灯直达底部

函数可以调用自身,这叫作递归。递归似乎有些可怕,就像从悬崖上跳下来一样,因为要冒着创建一个无限循环的风险;不过,如果函数编写正确,那么总是会有一个“停止”条件,它会处理降级情况,并防止无限循环的发生:


func countDownFrom(ix:Int) {    print(ix)    if ix > 0 { // stopper        countDownFrom(ix-1) // recurse!    }}  

在Swift 2.0之前,Swift对递归施加了一个限制:函数中的函数(局部函数)不可以调用自身。在Swift 2.0中,这个限制已经解除了。