第二節 流程控制

本文來自於瘋子們的開源圖書測試

使用ifswitch實現條件判斷的功能,使用for-in,for,whiledo-while實現循環的功能條件表達式或循環變量外面的括號是可選的。包住語句體的大括號不能省略。spa

 

在一個if語句裏,條件必須是一個布爾表達式----這就意味着相似於if score{...}的代碼是錯誤的,而不是隱含的和0進行比較的。索引

 

你可使用if和let一塊兒來做用於一個值,這個值可能會消失。這些值被表示爲可選的。一個可選值或者包含一個值或者是nil來講明這個值已經消失。在一個變量的類型以後添加一個?來標記這個值是可選的。get

 

EXPERIMENTit

 

改變optionalName值爲空,你獲得的greeting的值是什麼?若是optionalName是空的添加一個else從句來設置不一樣的greeting值。io

 

若是可選的值是nil,條件是false,那麼在大括號裏面的代碼將會跳過。不然,可選值會解包而且賦值給let後的常量,這個常量使得在代碼的語句塊裏的解包值是可用的。變量

Switches支持任意類型的數據和普遍的比較操做。它們不單單是侷限於整型和相等性測試。循環

 

實驗:試着移除default語句,你會獲得什麼錯誤?遍歷

 

在執行完和switch條件匹配的代碼以後,程序會從switch語句裏面退出。不會再執行下一個case語句,因此沒有必要顯式的在每條case語句後加上跳出switch語句的代碼。程序

你能夠在for-in 中使用一對變量來遍歷字典中的鍵值對。

 

實驗:添加其餘的變量來找出哪個數式最大的,最大的數是什麼。

 

使用while語句來重複的執行代碼塊直到條件改變爲止。循環條件也能夠放在最後面,確保循環至少執行一次。

你能夠在循環中使用一個索引,要麼使用..來聲明一下索引的範圍,要麼明確的指定初始值,條件和增量。下面的兩個循環實現了相同的功能。

 

使用..指定的範圍不包括上限值,使用...指定的範圍包括兩端的值。

相關文章
相關標籤/搜索