【Swift學習】Swift編程之旅---控制流(九)

  Swift提供了相似C語言的流程控制結構,包括能夠屢次執行任務的for和while循環,基於特定條件選擇執行不一樣代碼分支的if和switch語句,還有控制流程跳轉到其餘代碼的break和continue語句。swift

除了C裏面傳統的 for 條件遞增循環,Swift 還增長了 for-in 循環,用來更簡單地遍歷數組(array),字典(dictionary),範圍(range),字符串(string)和其餘序列類型。
Swift 的 switch 語句比 C 語言中更增強大。在 C 語言中,若是某個 case 不當心漏寫了 break,這個 case 就會「掉入」下一個 case,Swift 無需寫 break,因此不會發生這種「掉入」的狀況。Case 還能夠匹配更多的類型模式,包括範圍(range)匹配,元組(tuple)和特定類型的描述。switch case 語句中匹配的值能夠是由 case 體內部臨時的常量或者變量決定,也能夠由 where 分句描述更復雜的匹配條件。
 
   For-In循環
   它能夠遍歷數字範圍,數組元素,字符串的字符。
  遍歷範圍
for index in 1...5 { print("\(index) times 5 is \(index * 5)") } // 1 times 5 is 5 // 2 times 5 is 10 // 3 times 5 is 15 // 4 times 5 is 20 // 5 times 5 is 25

 

  遍歷數組數組

let names = ["Anna", "Alex", "Brian", "Jack"] for name in names { print("Hello, \(name)!") } // Hello, Anna! // Hello, Alex! // Hello, Brian! // Hello, Jack!

 

  遍歷字典安全

let numberOfLegs = ["spider": 8, "ant": 6, "cat": 4] for (animalName, legCount) in numberOfLegs { print("\(animalName)s have \(legCount) legs") } // ants have 6 legs // cats have 4 legs // spiders have 8 legs

 

 

  While循環ide

  While 循環運行一系列語句直到條件變成 false。這類循環適合使用在第一次迭代前迭代次數未知的狀況下。swift提供2種while循環(while,repeat-while)。spa

 

  whilecode

  普通while循環,在迭代前檢查條件是否爲true,是纔會進行迭代blog

  

 

  repeat-while字符串

  它和 while 的區別是在判斷循環條件以前,先執行一次循環的代碼塊,而後重複循環直到條件爲 false。string

 

  條件語句it

  if語句

  和c同樣這裏不作介紹

 

  switch語句

  switch語句會嘗試把某個值與若干個模式(pattern)進行匹配。根據第一個匹配成功的模式,switch語句會執行對應的代碼。當有可能的狀況較多時,一般用switch語句替換if語句。

switch語句都由多個case構成。爲了匹配某些更特定的值,Swift 提供了幾種更復雜的匹配模式switch語句必須是完備的。這就是說,每個可能的值都必須至少有一個case塊與之對應。在某些不可能涵蓋全部值的狀況下,你可使用默認(default)塊知足該要求,這個默認塊必須在switch語句的最後面。與C語言和Objective-C中的switch語句不一樣,在 Swift 中,當匹配的case塊中的代碼執行完畢後,程序會終止switch語句,而不會繼續執行下一個case塊。這也就是說,不須要在case塊中顯式地使用break語句。這使得switch語句更安全、更易用,也避免了因忘記寫break語句而產生的錯誤。

相關文章
相關標籤/搜索