基本语法
switch someValue {
case value1:
// 当 someValue 等于 value1 时执行此处代码
case value2:
// 当 someValue 等于 value2 时执行此处代码
...
default:
// 如果以上所有情况都不匹配,则执行此处代码
}
Switch 语句的关键字是 `switch`,后面跟着一个待匹配的值 `someValue`。然后是一系列的 `case` 分支,每个分支后面跟着一个可能的值,如果 `someValue` 等于某个 `case` 后面的值,对应的代码块将会被执行。最后是可选的 `default` 分支,当 `someValue` 与所有的 `case` 值都不匹配时,将执行 `default` 分支的代码块。
示例:
let day = 3
switch day {
case 1:
print("星期一")
case 2:
print("星期二")
case 3:
print("星期三")
case 4:
print("星期四")
case 5:
print("星期五")
default:
print("周末")
}
在这个示例中,根据 `day` 的值,Switch 语句将输出相应的星期几名称。因为 `day` 的值是 `3`,所以输出结果为 `"星期三"`。
搭配区间使用
let score = 85
switch score {
case 0..<60:
print("不及格")
case 60..<70:
print("及格")
case 70..<80:
print("良好")
case 80...100:
print("优秀")
default:
print("无效分数")
}
在这个示例中,根据 `score` 的值,Switch 语句将输出对应的评分等级。这里使用了区间匹配来简洁地判断分数的范围。
搭配元组使用
let point = (2, 2)
switch point {
case (0, 0):
print("原点")
case (_, 0):
print("在 x 轴上")
case (0, _):
print("在 y 轴上")
case (-2...2, -2...2):
print("在正方形内部")
default:
print("在正方形外部")
}
这个示例展示了如何使用元组匹配来判断一个点的位置关系。根据点的坐标,Switch 语句将输出相应的位置信息。