Menu
CoddyTech

switch 语句

本课属于 Coddy Swift 学习旅程的“基础知识”单元。第 29 课,共 86 课。

当你要将一个值与多个可能的匹配项进行比较时,switch 语句比长串的 else if 更简洁。需要处理多个不同情况时,它尤其有用。

let day = "Monday"

switch day {
case "Monday":
    print("Start of the week")
case "Friday":
    print("Almost weekend!")
case "Saturday", "Sunday":
    print("Weekend!")
default:
    print("Regular day")
}

Swift 会将 switch 后面的值与每个 case 进行比较。找到匹配项后,它会执行对应 case 中的代码。注意,你可以用逗号在一个 case 中组合多个值。

default 分支会处理所有与其他分支都不匹配的值:当你的各个分支没有覆盖所有可能的值时,就必须使用它。与某些其他语言不同,Swift 的 switch 不会自动贯穿到下一个分支,因此你不需要使用 break 语句。

let grade = "B"

switch grade {
case "A":
    print("Excellent")
case "B":
    print("Good")
case "C":
    print("Fair")
default:
    print("Needs improvement")
}
challenge icon

挑战

简单
编写一个函数 getSeasonActivity,它接受 season,并返回该季节推荐的活动。

使用 switch 语句匹配季节,并返回相应的活动。

情况:

  • "Spring":返回 "Go hiking"
  • "Summer":返回 "Go swimming"
  • "Fall"、"Autumn":返回 "Go apple picking"(两者都应返回相同的活动)
  • "Winter":返回 "Go skiing"
  • 其他任何值:返回 "Stay home"

参数:

  • season(String):季节的名称

返回值:作为 String 的推荐活动

亲手试试

func getSeasonActivity(season: String) -> String {
    // 在这里编写代码
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: Swift 在线编辑器