Swift 面试题
目录

Swift 中 guard 语句的用法?

· 约 3 分钟读完 · 第 33 / 196 章

推荐答案

本题详细解读

1. guard 语句的基本用法

guard 语句用于在代码中提前退出,通常用于检查条件是否满足。如果条件不满足,guard 语句会执行 else 分支中的代码,并且必须使用 return、break、continue 或 throw 来退出当前作用域。

2. guard 与 if 的区别

  • guard 语句要求条件为 true 时继续执行,否则执行 else 分支并退出。
  • if 语句则是在条件为 true 时执行某个代码块,条件为 false 时执行另一个代码块。

3. guard 语句的优势

  • 代码可读性:guard 语句可以将错误处理或条件检查提前,使主逻辑代码更加清晰。
  • 减少嵌套:使用 guard 可以减少代码的嵌套层次,避免“金字塔式”的代码结构。

4. guard 语句的常见用法

  • 可选绑定:guard 常用于解包可选值,如果解包失败则提前退出。
  • 条件检查:guard 也可以用于检查某些条件是否满足,如果不满足则提前退出。

5. 示例代码解析

  • 如果 input 为 nil,guard 语句会执行 else 分支,打印 "Input is nil" 并退出函数。
  • 如果 input 不为 nil,unwrappedInput 会被解包,并继续执行后续代码,打印 "Processing input: (unwrappedInput)"。

6. 注意事项

  • guard 语句的 else 分支必须退出当前作用域,否则编译器会报错。
  • guard 语句通常用于函数或方法的开头,用于检查参数的有效性。