Control Transfer Statements - 控制转移语句
控制转移语句能改变已经执行代码的顺序,能使代码跳转到别的部分。Swift有四个句子:
1.continue
2.break
3.fallthrough
4.return
control, break和fallthrough在下文中详解。reture语句在Functions中描述。
Continue
Continue语句告诉循环体终止现在的操作,然后开始迭代下一个循环。好像在说“我这次迭代做完啦”,总之不会离开循环体。
复制代码
NOTE:
在for-condition-increment循环中,调用了continue后累加器依旧会计算。循环会继续像平时一样工作,只有循环体中的代码会被跳过。
下面例子中从一个小写字符串中移除了所有的元音和空格,创建了个字谜短语:
复制代码let puzzleInput = "great minds think alike"
var puzzleOutput = ""
for character in puzzleInput {
switch character {
case "a", "e", "i", "o", "u", " ":
continue
default:
puzzleOutput += character
}
}
println(puzzleOutput)
// prints "grtmndsthnklk"
上面代码里,只要匹配到元音字母或空格,就会触发continue关键字。使本次迭代立即终止,然后直接跳入下次迭代的开头。这个方式使得switch代码块能匹配(和忽略)元音字母与空格,比用代码块把每一个要打印字符都匹配一次的好。
Break
Break语句能立即终止整个控制流。可以根据你想要的在switch或循环语句里的任何地方终止整个执行。
Break in a Loop Statement - 循环中的Break
当在循环体中使用break,循环会立即停止,并将控制流带到循环体括号(})后方的第一行代码里。循环体里其他的代码不会被执行,也不会开始下一次迭代。
Break in a Switch Statement - Switch中的break
在switch里使用break,switch语句会立即终止,并将控制流带到switch语句括号(})后方的第一行代码里。








