Swift控制流
控制流
本页包含内容:
Swift提供了类似 C 语言的流程控制结构,包括可以多次执行任务的for
和while
循环,基于特定条件选择执行不同代码分支的if
和switch
语句,还有控制流程跳转到其他代码的break
和continue
语句。
除了 C 语言里面传统的 for 条件递增(for-condition-increment
)循环,Swift 还增加了for-in
循环,用来更简单地遍历数组(array),字典(dictionary),区间(range),字符串(string)和其他序列类型。
Swift 的switch
语句比 C 语言中更加强大。在 C 语言中,如果某个 case 不小心漏写了break
,这个 case 就会贯穿(fallthrough)至下一个 case,Swift 无需写break
,所以不会发生这种贯穿(fallthrough)的情况。case 还可以匹配更多的类型模式,包括区间匹配(range matching),元组(tuple)和特定类型的描述。switch
的 case 语句中匹配的值可以是由 case 体内部临时的常量或者变量决定,也可以由where
分句描述更复杂的匹配条件。