返回,在那里停止进程,并且在它之后不执行任何东西.它只是在那里停止了这个过程.
为了了解更多,让我们更新逻辑并查看结果.
func allTestsPassed(tests: [Bool]) -> Bool {
print("start of logic")
var currentNumber : Int = 1
for test in tests {
print("currentNumber=\(currentNumber) with value==\(test)")
if test == false {
print("returning number because data is false")
return false
}
currentNumber += 1
}
print("end of logic")
return true
}
情况1:所有输入均为真
现在让我们try case 1
,其中所有输入都将是true
allTestsPassed(tests: [true, true, true, true])
结果是
start of logic
currentNumber=1 with value==true
currentNumber=2 with value==true
currentNumber=3 with value==true
currentNumber=4 with value==true
end of logic
case 2:其中一个输入为假
allTestsPassed(tests: [true, true, false, true])
结果是
start of logic
currentNumber=1 with value==true
currentNumber=2 with value==true
currentNumber=3 with value==false
returning number because data is false
如果您在第二个例子中看到,您不会看到end of logic
,因为它在测试=FALSE时返回
希望日志(log)能澄清你的理解……