我意识到这是一个非常简单的代码,我很确定它是递归的,但我只是想确保它是我认为的。 (对不起,如果这是一个蹩脚的问题,如果我理解递归实际上是什么,我只是第二次猜测自己。)
var x = 0
func countToTen() {
if (x <= 10) {
println(x)
x++
countToTen()
}
}
答案 0 :(得分:5)
是的,这绝对是递归的!但是,为了获得良好的风格,最好将x作为函数的参数。这是一种样式问题,但它也使代码更容易维护,没有像你这样的全局变量。
这就是我在说什么。
func countToTen(x) {
if (x <= 10) {
println(x)
countToTen(x + 1)
}
}
现在你可以调用函数
countToTen(1)
例如,那将从1到10计算。你做得对,我的版本可能只是稍微清晰一点。
答案 1 :(得分:-1)