国产探花免费观看_亚洲丰满少妇自慰呻吟_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,否則會有語法錯誤。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汽车| 吉安市| 靖安县| 永宁县| 清原| 宣化县| 磐安县| 安宁市| 德庆县| 大城县| 荃湾区| 海宁市| 曲麻莱县| 保康县| 泌阳县| 莒南县| 丰县| 根河市| 大兴区| 天峻县| 江山市| 琼结县| 霞浦县| 固安县| 乐昌市| 乌苏市| 大关县| 石城县| 汶川县| 长子县| 花垣县| 扎囊县| 喀喇沁旗| 桦甸市| 溧阳市| 宁城县| 嵊泗县| 息烽县| 中超| 鄂托克前旗| 克拉玛依市|