Tailwind CSSTailwind CSS
Home
  • Tailwind CSS 书籍目录
  • Vue 3 开发实战指南
  • React 和 Next.js 学习
  • TypeScript
  • React开发框架书籍大纲
  • Shadcn学习大纲
  • Swift 编程语言:从入门到进阶
  • SwiftUI 学习指南
  • 函数式编程大纲
  • Swift 异步编程语言
  • Swift 协议化编程
  • SwiftUI MVVM 开发模式
  • SwiftUI 图表开发书籍
  • SwiftData
  • ArkTS编程语言:从入门到精通
  • 仓颉编程语言:从入门到精通
  • 鸿蒙手机客户端开发实战
  • WPF书籍
  • C#开发书籍
learn
  • Java编程语言
  • Kotlin 编程入门与实战
  • /python/outline.html
  • AI Agent
  • MCP (Model Context Protocol) 应用指南
  • 深度学习
  • 深度学习
  • 强化学习: 理论与实践
  • 扩散模型书籍
  • Agentic AI for Everyone
langchain
Home
  • Tailwind CSS 书籍目录
  • Vue 3 开发实战指南
  • React 和 Next.js 学习
  • TypeScript
  • React开发框架书籍大纲
  • Shadcn学习大纲
  • Swift 编程语言:从入门到进阶
  • SwiftUI 学习指南
  • 函数式编程大纲
  • Swift 异步编程语言
  • Swift 协议化编程
  • SwiftUI MVVM 开发模式
  • SwiftUI 图表开发书籍
  • SwiftData
  • ArkTS编程语言:从入门到精通
  • 仓颉编程语言:从入门到精通
  • 鸿蒙手机客户端开发实战
  • WPF书籍
  • C#开发书籍
learn
  • Java编程语言
  • Kotlin 编程入门与实战
  • /python/outline.html
  • AI Agent
  • MCP (Model Context Protocol) 应用指南
  • 深度学习
  • 深度学习
  • 强化学习: 理论与实践
  • 扩散模型书籍
  • Agentic AI for Everyone
langchain
  • 条件语句 (if, switch)

条件语句 (if, switch)

在 Swift 中,条件语句用于根据不同的条件执行不同的代码块。常用的条件语句包括 if 和 switch,它们帮助我们控制代码的执行流程。了解如何使用这些语句能够让我们编写更加灵活的程序。


1. if 语句

if 语句是最常见的条件语句,它根据给定的条件判断结果来决定是否执行特定的代码块。if 语句支持单一条件判断,也可以与 else 和 else if 配合使用。

基础用法

示例:单一条件

let temperature = 30

if temperature > 25 {
    print("天气很热")
}

如果 temperature 大于 25,则输出 "天气很热"。

使用 else

else 用于在 if 条件为 false 时执行另一块代码。

示例:if 和 else

let temperature = 20

if temperature > 25 {
    print("天气很热")
} else {
    print("天气不热")
}

如果 temperature 小于或等于 25,则输出 "天气不热"。

使用 else if

else if 用于在多个条件之间进行判断,提供更细粒度的条件处理。

示例:if, else if 和 else

let temperature = 15

if temperature > 25 {
    print("天气很热")
} else if temperature > 15 {
    print("天气适宜")
} else {
    print("天气寒冷")
}

此代码根据 temperature 的值分别输出不同的天气描述。

条件判断的合并

你可以在 if 语句中使用逻辑运算符(如 &&, ||)来合并多个条件判断。

示例:合并条件

let temperature = 30
let isSunny = true

if temperature > 25 && isSunny {
    print("天气很热且阳光明媚")
} else {
    print("天气或阳光条件不满足")
}

2. switch 语句

switch 语句是另一种条件语句,用于多重条件判断。与 if 语句不同,switch 支持更多复杂的模式匹配,并且不需要显式地使用 break 来退出每个分支。

基础用法

switch 语句通过将一个值与多个可能的情况进行匹配,从而决定执行哪个代码块。

示例:基础 switch

let number = 2

switch number {
case 1:
    print("数字是 1")
case 2:
    print("数字是 2")
case 3:
    print("数字是 3")
default:
    print("数字不在 1 到 3 之间")
}

在此示例中,switch 会检查 number 的值,如果匹配到相应的 case,则执行对应的代码。

使用范围匹配

switch 可以使用范围来匹配多个值。例如,检查一个数字是否在某个范围内。

示例:范围匹配

let temperature = 30

switch temperature {
case 0...10:
    print("寒冷")
case 11...20:
    print("凉爽")
case 21...30:
    print("温暖")
default:
    print("炎热")
}

如果 temperature 的值在 21 到 30 之间,则输出 "温暖"。

元组匹配

switch 还支持匹配元组,可以将多个条件进行组合匹配。

示例:元组匹配

let point = (x: 3, y: 2)

switch point {
case (0, 0):
    print("原点")
case (_, 0):
    print("X 轴上的点")
case (0, _):
    print("Y 轴上的点")
case let (x, y) where x == y:
    print("x 和 y 相等")
default:
    print("其他点")
}

此示例中,switch 语句通过元组和条件进行匹配。

条件语句的 fallthrough

在 switch 语句中,默认情况下每个 case 都是独立的,不会自动跳转到下一个 case。如果你希望在满足某个 case 后继续执行下一个 case,可以使用 fallthrough。

示例:使用 fallthrough

let number = 1

switch number {
case 1:
    print("数字是 1")
    fallthrough
case 2:
    print("数字是 2")
default:
    print("其他数字")
}

在此示例中,无论 number 是 1 还是 2,都将输出 "数字是 1" 和 "数字是 2"。

switch 与元组匹配的复合条件

你可以在 switch 中使用多个条件来进行复杂的模式匹配。

示例:复合条件

let age = 25
let gender = "female"

switch (age, gender) {
case (18...30, "female"):
    print("年轻女性")
case (18...30, "male"):
    print("年轻男性")
case (31..., "female"):
    print("成熟女性")
case (31..., "male"):
    print("成熟男性")
default:
    print("其他")
}

3. 总结

  • if 语句:用于单一或多个条件的判断,可以与 else 和 else if 配合使用,支持逻辑运算符组合条件。
  • switch 语句:用于多重条件匹配,支持范围匹配、元组匹配以及复杂的模式匹配。switch 更加灵活,适合用于多个分支的选择。
  • fallthrough:switch 语句中使用 fallthrough 可以实现“贯穿”效果,允许从一个 case 跳转到下一个 case。

通过理解和灵活使用这些条件语句,您可以在 Swift 中编写更清晰、更高效的代码。

Last Updated:: 11/30/24, 10:36 PM