国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

OC與Swift的區別三(條件語句)

2019-11-14 19:20:47
字體:
來源:轉載
供稿:網友

11.swift中的switch結構

區別一:

oc中switch條件只可以放整數

swift中switch條件可以放幾乎任何數據類型

區別二:

oc中每一個case中應有break,如果沒有break,則會繼續向下貫穿執行case直到碰見break跳出switch結構

swift中不需要在case分支最后添加break語句,該case分支執行完成后,會跳出switch結構

區別三:

oc中不是每個case后面必須有可執行語句,如果某個case分支中沒有可執行語句和break,則該分支將會執行其下面最近的一個有可執行語句的分支中代碼,以此實現多條件匹配

swift中每個case后面必須都有可執行語句,

ps:此區別是因為區別二的存在,swift中表示多條件匹配的情況使用的語法為,case后跟多個條件,用逗號隔開。

此外,swift的case中可以填寫一個范圍作為匹配條件,如case a...b:

區別三:

oc中switch中default不是必需的

swift中switch中default是必需的

 

swift中switch語句可以使用where來增加判斷條件

如:

var point = (10,-10)

switch point{

  case let(x,y) where x == y :

             //

      case let(x,y) where x == -y :

            //

       default :

    //

}

swift中switch語句可以使用fallthrough關鍵字來執行貫穿操作,即執行完當前case后,會接著執行fallthrough后面的case活著default語句,類似于oc中case沒有寫break語句,但是使用了fallthrough,其后面的case條件中將不能定義常量或變量,即fallthrough后面的case條件不能使用類似上面代碼中let (x,y) 這樣的變量來接收point,否則會有語法錯誤。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阳江市| 鞍山市| 抚顺县| 烟台市| 无极县| 青川县| 长兴县| 佛山市| 光山县| 玉门市| 曲麻莱县| 洛川县| 金秀| 叶城县| 彰武县| 普兰店市| 奉化市| 武汉市| 大冶市| 喀什市| 松江区| 逊克县| 永寿县| 田林县| 塔城市| 清流县| 香格里拉县| 永清县| 永嘉县| 江山市| 通州市| 额敏县| 渝中区| 永靖县| 息烽县| 赤壁市| 台北县| 澄城县| 南郑县| 两当县| 富顺县|