程式語言常用的流程控制
條件式陳述 Conditional Statement
if-else
var age = 25
if (age > 20) {
print("可以結婚了")
} else if (age > 18){
print("可以投票了")
} else {
print("乖乖等長大")
}
switch-case
let dayOfWeek = 4
switch dayOfWeek {
case 1:
print("Sunday")
case 2:
print("Monday")
case 3:
print("Tuesday")
case 4:
print("Wednesday")
fallthrough
case 5:
print("Thursday")
case 6:
print("Friday")
case 7:
print("Saturday")
default:
print("Invalid day")
}
條件可以是任何型別,數字範圍,文字,字典或元組
另外,有一個不常用 但還是知道一下比較好的參數
fallthrough 可以穿透一層 case
迴圈式陳述 Loop Statement
for-in-loop
範例 1
let languages = ["Flutter","Swift", "Kotlin"]
for language in languages where language != "Kotlin" {
print(language)
}
範例 2
for i in 1 ... 5 {
print(i)
}
for i in 1 ..< 5 {
print(i)
}
範例 3
for i in stride(from: 1, to: 10, by: 2) {
print(i)
}
Nest for-in-loop 巢狀迴圈、跳過(continue)與中斷(break)
範例 1
outerLoop: for i in 1...3{
innerLoop: for j in 1...3 {
if i==1 && j == 3 {
continue outerLoop
}
if j == 3 {
break outerLoop
}
print("i = \(i), j = \(j)")
}
}
while-loop
範例 1
var i = 1, n = 5
while (i <= n) {
print(i)
i = i + 1
}
範例 2
var i = 1, n = 5
repeat {
print(i)
i = i + 1
} while (i <= n)
保護式陳述 guard statement
範例 1
func checkOddEven() {
var number = 7
guard number % 2 == 0 else {
print("奇數")
return
}
print("偶數")
}
範例 2
func checkNumber() {
var number? = 7
guard let myNumber = number else {
print("number is undefined")
return
}
guard number % 2 == 0 else {
print("奇數")
return
}
print("偶數")
}
型別後出現了一個問號,請看下一篇文章 swift: Type Safe
轉載請註明來源,歡迎對文章中的引用來源進行考證,歡迎指出任何有錯誤或不夠清晰的表達。可以郵件至 [email protected]