Swift学习笔记(5)—— 控制流
switch的差距还是挺大的。
5.控制流
简单的for循环、while循环、do-while循环 跟C或JAVA类似
for-in 循环
- 可以遍历区间、集合、字符串等
- 不需要每一项值的话,可以用
_
代替
if、if-else跟C或JAVA类似
if条件可以用一个可选类型值做条件,为nil
时相当于false
.
switch
- 支持的类型比C或JAVA多。
- 不需要
break
——默认匹配到一个case之后就会停止。 - 一个case分支可以写多个匹配的值。
- 一个case分支可以匹配一个区间。
- 可以要使用
fallthrough
显示声明需要穿透
——匹配到一个case之后继续匹配其他的case。 - 可以使用
元组
值,使用元组时,case的每一个元组元素值都可以是区间,或者用_
匹配所有值。 - 允许多个case匹配相同的值,但默认情况下,只有第一个case语句会被执行,参见第2条。
- 值绑定:在case语句中使用
var
或者let
将匹配到的值存入变量或常量,作用域为当前case。 - case中可以使用
where
来匹配满足某些条件—— 跟SQL学的?!
这笔记只是给我自己看的,用以标记一些我觉得需要记的或者有意思的一些知识点,有很多我觉得没必须要赘述的东西就没记,所以是不系统的,只作提示用。
感谢 numbbbbb以及其他贡献者: https://github.com/numbbbbb/the-swift-programming-language-in-chinese
当然,还有英文页: https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/BasicOperators.html#//apple_ref/doc/uid/TP40014097-CH6-XID_70