Swift(二)控制流

2022-05-18 22:55:29 字數 1556 閱讀 1031

要處理條件邏輯,使用 if 和 switch ,要處理迴圈邏輯,使用 for-in, for, while, 和 do-while 。包著條件或者迴圈的括號可加可不加。處理邏輯體的花括弧是必須加的。

注意

以上**,temascore自己佔了一行**。這是在playground裡看變數值的簡單方法。

在if語句裡,條件必須是乙個boolean表示式——意思是像 if score 這種寫法是錯的,因為不能隱式地轉換為0值。

你可以把 if 和 let 一起使用來處理可能不明確的值。這些值表示為可選值。可選值要麼包含乙個值,要麼包含 nil ,表明這個值是不明確的。在值的型別後加上問號 (?) 來標記這個值是可選的。

試一試

將 optionalname 改為 nil。 greeting 是什麼值? 再加乙個 else 

語句,如果 optionalname 是 nil ,將 greeting 設定乙個不同的值。

switch支援任何種類的資料和大量的比較操作——可並不是只限於整型和測試是否相等。

試一試

試試把default那一部分去掉。看看會有什麼錯誤?

注意看一下 let 是怎麼用來將匹配模式部分的值賦給常量的。

匹配switch case 的**執行完以後,程式從switch語句跳出。不會執行下乙個case,所以沒有必要在每個case結束部分**處顯示的跳出switch。

通過提供一組用於各個鍵值對的名稱,用 for-in 來遍歷字典。字典是無序集合,所以它們的鍵和值通過字母表順序來進行遍歷。

試一試

增加乙個變數來追蹤哪種數是最大的,還有這個最大的數是多少

用 while 來重複執行一段**直到條件改變。迴圈的條件也可以放到最後,以保證迴圈至少執行一次。

你可以在迴圈裡維持乙個索引——要麼使用 ..< 建立一套索引或者要麼寫乙個顯示的初始化、條件和遞進。這兩種迴圈是一樣的:

用 ..< 建立的索引忽略最大值,用 … 建立的索引包含最大值。

Swift之旅(二)控制流

要處理條件邏輯,使用 if 和 switch 要處理迴圈邏輯,使用 for in,for,while,和 do while 包著條件或者迴圈的括號可加可不加。處理邏輯體的花括弧是必須加的。let individualscores 75,43,103,87,12 var teamscore 0 for...

Swift 控制流 七

swift中的控制語句包括for while if switch break continue 一.for 表示1 5閉區間中的數字,其中index為隱式宣告 forindex in1 5 開區間打印記過1 4 for index in 1.5 如果不需要知道範圍內的每一項的值,可以使用 進行忽略 ...

swift中控制流相關

swift有四種控制轉移語句。1.continue語句告訴乙個迴圈體立刻停止本次迴圈迭代,重新開始下次迴圈迭代。就好像在說 本次迴圈迭代我已經執行完了 但是並不會離開整個迴圈體,官方文件的 是這樣的 let puzzleinput great minds think alike var puzzle...