swift較OC特有的條件&循環(huán)語句

在程序開發(fā)過程中,如果要使用可選值,需要先用if判斷它是否有值,
如果有值,才能對(duì)它強(qiáng)制解包進(jìn)行取值,如果為nil,則不能強(qiáng)制解包。
這樣寫程序比較繁瑣,為了讓代碼更簡潔,swift推出了if-let語法

一切盡在注釋中。

func test(){
    // MARK: if-let 語句
    let age:Int? = 15
    if age == nil || age! > 18{
        print("age為空或age大于18歲")
        return
    }
    //這里可以使用age
    print(age!)
    
    //這里一段代碼可以代替上邊的代碼
    if let myAge = age, myAge < 18 { //swift3 用逗號(hào)代替了 swift2中的where
        //這里使用age
        print(myAge)
    }
    
    //guard語句與if語句有點(diǎn)類似,不同的是,它只有一個(gè)代碼塊,并且只會(huì)在表達(dá)式判斷為false時(shí)執(zhí)行后續(xù)代碼塊,否則會(huì)跳過整個(gè)guard語句。
    //注意guard語句的else中一定要有返回的語句,如return、continue、break、throw等提早退出的關(guān)鍵字
    // MARK: guard 語句
//    guard 1>2 else {
//        print("判斷語句為false")
//        continue
//    }
    
    // MARK: guard-let 語句
    guard let meAge = age, meAge > 18 else {
        print("age小于18")
        return
    }
    //guard-let變量的作用域 比 if-let的作用域要大奧
    print(meAge)
}
test()

特有的循環(huán)語句就是repeat-while,跟do-while語法一模一樣,不做贅述了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Swift 提供了類似 C 語言的流程控制結(jié)構(gòu),包括可以多次執(zhí)行任務(wù)的for和while循環(huán),基于特定條件選擇執(zhí)行...
    窮人家的孩紙閱讀 778評(píng)論 1 1
  • 一、條件語句 條件語句通過設(shè)定的一個(gè)或多個(gè)條件來執(zhí)行程序,在條件為真時(shí)執(zhí)行指定的語句,在條件為 false 時(shí)執(zhí)行...
    Albert_Li99閱讀 2,725評(píng)論 0 2
  • 本章將會(huì)介紹 控制流For-In 循環(huán)While 循環(huán)If 條件語句Switch 語句控制轉(zhuǎn)移語句 continu...
    寒橋閱讀 803評(píng)論 0 0
  • [The Swift Programming Language 中文版]本頁包含內(nèi)容: Swift提供了多種流程控...
    風(fēng)林山火閱讀 680評(píng)論 0 0
  • Swift提供了多種控制流聲明。包括while循環(huán)來多次執(zhí)行一個(gè)任務(wù);if,guard和switch聲明來根據(jù)確定...
    BoomLee閱讀 2,070評(píng)論 0 3

友情鏈接更多精彩內(nèi)容