本頁(yè)包含內(nèi)容:
Swift提供了類似 C 語(yǔ)言的流程控制結(jié)構(gòu),包括可以多次執(zhí)行任務(wù)的for和while循環(huán),基于特定條件選擇執(zhí)行不同代碼分支的if和switch語(yǔ)句,還有控制流程跳轉(zhuǎn)到其他代碼的break和continue語(yǔ)句。
除了 C 語(yǔ)言里面?zhèn)鹘y(tǒng)的 for 條件遞增(for-condition-increment)循環(huán),Swift 還增加了for-in循環(huán),用來(lái)更簡(jiǎn)單地遍歷數(shù)組(array),字典(dictionary),區(qū)間(range),字符串(string)和其他序列類型。
Swift 的switch語(yǔ)句比 C 語(yǔ)言中更加強(qiáng)大。在 C 語(yǔ)言中,如果某個(gè) case 不小心漏寫(xiě)了break,這個(gè) case 就會(huì)貫穿(fallthrough)至下一個(gè) case,Swift 無(wú)需寫(xiě)break,所以不會(huì)發(fā)生這種貫穿(fallthrough)的情況。case 還可以匹配更多的類型模式,包括區(qū)間匹配(range matching),元組(tuple)和特定類型的描述。switch的 case 語(yǔ)句中匹配的值可以是由 case 體內(nèi)部臨時(shí)的常量或者變量決定,也可以由where分句描述更復(fù)雜的匹配條件。