Swift 面试题
目录

Swift 中如何抛出错误 (throw)?

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

推荐答案

在 Swift 中,抛出错误是通过 throw 关键字来实现的。你可以抛出一个符合 Error 协议的类型实例。以下是一个简单的示例:

在这个示例中,validateInput 函数可能会抛出一个 MyError.invalidInput 错误。

本题详细解读

1. 定义错误类型

在 Swift 中,错误类型通常是通过枚举来实现的,并且这个枚举必须符合 Error 协议。Error 协议是一个空协议,用于标记类型可以作为错误被抛出。

2. 抛出错误

使用 throw 关键字来抛出一个错误。你可以在函数、方法或闭包中使用 throw,前提是这些函数、方法或闭包被标记为 throws。

3. 调用可能抛出错误的函数

当你调用一个可能抛出错误的函数时,必须使用 try 关键字。你可以使用 do-catch 语句来捕获并处理错误。

4. 可选错误处理

如果你不关心具体的错误类型,可以使用 try? 将结果转换为可选类型。如果函数抛出错误,结果将为 nil。

5. 强制解包错误处理

如果你确定函数不会抛出错误,可以使用 try! 强制解包。如果函数抛出错误,程序会崩溃。

通过这些方式,你可以在 Swift 中有效地抛出和处理错误。