continue 就是告訴循環停止目前的執行程序,並且再次從頭開始執行循環。
break 會立刻結束整個 control flow ,當你想要提前結束 switch 或者循環語句的時候可以使用它。
在循環中使用 break 時,break會立即結束循環的執行,並轉移控制到循環結束後的第一行上,當前循環中的其他程式碼都不會進行;在 switch 中使用 break 時,也會立刻結束他的執行,並直接將控制轉移到 switch 結束的第一行程式碼上。
For in 的 break 範例,我們將在 i 大於 6 時,break 並印出結果。
Switch 的 break 範例,我們在 default 不需執行任何動作,所以我們給他一個 break,讓他在匹配到 default 結果時,就直接轉移到 if let 語句執行。
假如我們使用 break 是讓程式碼結束執行轉移到下一段程式碼上,則 fallthrough 則是請程式碼繼續貫穿執行下一個情況或 case 的內容,以下我們會舉出一個使用fallthrough的例子。
fallthrough 前
這是我們還沒使用 fallthough 前的樣子,如果我們想讓他也顯示 default 中 "(food)也是飲料" 的程式碼,我們就在 case 後方寫下 fallthough ,讓他執行 case 匹配成功後的下一段程式碼。
fallthrough 後
特別強調 fallthrough 關鍵字只是使代碼執行直接移動到下一個情況,並不是貫穿整段程式碼。
當你匹配條件不符合時,fallthrough也不會執行也不會跳至 default。
你也可以在全部的 case 後加上 fallthrough 貫穿整段程式碼。
假如你設的值是變數,他也會在進行每段程式的運算並計算他的值。
給程式碼貼上標籤除了方便查找及了解外,你也可以透過上述介紹的功能加上標籤,讓功能作用在所標記該段的程式碼上,語句裡寫標籤也會讓邏輯更加清晰跟了解。下列舉一個加上標籤的範例:
如果我們單純只在 switch 中 break,只是 break 我們當下這個 switch 而已,而不是整個語句,所以外面的 while 循環會繼續執行。
如果我們希望他在當 integer 在 6...10 區間 break 的時候,外面的 while 循環也跟著停止執行,我們可以為這個 while 循環給上一個叫做 countLoop 的標籤,並且在 break 後面加上該標籤指定 break 它。