Swift採用類同c語言的流程控制語句,if, for, for-in, while, do-while , switch, break, continue .Swift語言的Switch語句自動添加了break效果,這樣你能夠不用沒個case後面再寫break.同c語言不一樣,swift語言的if for while 等,沒有括號來括表達式swift
1: if 語句。if語句只對邏輯值檢測。這裏不一樣於c語言的if語句是檢測是否 非0.數組
var bFlag:Bool = true if bFlag { println("\(bFlag)") }
2: for語句,for語句的用法相似於c語言for語句spa
var index:Int = 0 for index; index < 5; index++ { println("\(index)\n") }
3: for-in語句用於多集合的遍歷code
for item in 1..5 { println("\(item) ") }
若是不使用集合元素能夠用 _忽略blog
var iCount : Int = 1 let iBase : Int = 2 for _ in 1...3 { iCount *= iBase } println("\(iCount)")
用for-in 遍歷數組it
let array = [1,3,5,7] for item in array { println("\(item) ") }
for-in 遍歷字典 io
let dic = ["key1":"value1", "key2":"value2", "key3":"value3"] for (key, value) in dic { println("key:\(key) value:\(value) \n") }
4:while循環。while循環判斷邏輯值class
var bFlag:Bool = true var iCount:Int = 0 while bFlag { iCount++ if iCount > 3 { bFlag = false } println("\(iCount)\n") }
5: do-while 。while/ do-while 循環控制流程是和c語言同樣的,只是他們的判斷是邏輯值而不是c語言那樣的 !0 值。循環
var bFlag:Bool = true var iCount:Int = 0 do { iCount++ if iCount > 3 { bFlag = false } println("\(iCount)\n") }while bFlag
6:switch 語句。switch語句必須是完備的語句,defualt語句必須在全部case語句的最後。每一個case後switch語句會自動break。case 塊中不容許空語句。一個case條件能夠使用範圍匹配。同時case條件能夠使用元組匹配,並且元組能夠用 "_" 表示任何值遍歷
let iCount :Int = 3 switch iCount{ case 1...6: println("in") case 7..9: println("out") default: println("def") }
let character: Character = "c" switch character{ case "a", "b", "c" : println("xx") case "d", "e": println("oo") default: println("def") }
var somePointe = (1,2) switch somePointe { case(0, 0): println("0.0") case(_, 2): println("_, 2")//_匹配 進這句 case(1, 2): println("1, 2")//不會進,前面已經bread default: println("def") }