Swift 条件语句
在 Swift 中,条件语句用于执行基于特定条件的代码块。常用的条件语句包括 if
和 switch
语句。
if
语句
if
语句用于基于特定条件执行代码块。基本语法如下:
let condition = true
if condition {
// 当条件为 true 时执行此代码块
} else {
// 当条件为 false 时执行此代码块
}
你可以使用 else if
来处理多个条件:
let value = 10
if value < 5 {
print("Value is less than 5")
} else if value < 10 {
print("Value is less than 10")
} else {
print("Value is 10 or more")
}
switch
语句
switch
语句用于基于特定的值执行不同的代码块,是检查多个条件的简便方法。它比多重if-else
语句更简洁和易读。基本语法如下:
let number = 3
switch number {
case 1:
print("One")
case 2:
print("Two")
case 3:
print("Three")
default:
print("Not One, Two, or Three")
}
在 Swift 中,switch
语句必须是可穷尽的,即所有可能的值都必须被覆盖。default
分支用于覆盖所有未明确列出的情况。
范围匹配和元组
switch
语句还支持范围匹配和元组匹配,这使程序更加灵活:
let character: Character = "a"
switch character {
case "a", "e", "i", "o", "u":
print("\(character) is a vowel")
default:
print("\(character) is a consonant")
}
let point = (1, 1)
switch point {
case (0, 0):
print("Origin")
case (_, 0):
print("On the X-axis")
case (0, _):
print("On the Y-axis")
case (-2...2, -2...2):
print("Inside the box")
default:
print("Outside the box")
}
使用 where
关键字
在 switch 语句中,还可以使用 where
关键字,为 case 增加额外的条件:
let age = 25
switch age {
case 0...17:
print("Underage")
case 18...:
print("Adult")
default:
break
}
let anotherNumber = 9
switch anotherNumber {
case let x where x % 2 == 0:
print("\(x) is even")
default:
print("\(anotherNumber) is odd")
}
Swift 的条件语句功能强大,并且由于其模式匹配功能,switch
比在许多其他语言中更加灵活和易用。