Swift 错误处理全解析
1. 使用返回值进行错误处理
错误处理的最简单形式是使用函数或方法的返回值来指示操作是否成功。这个返回值可以是简单的布尔值(true 或 false),也可以是更复杂的枚举类型,其值能表明函数或方法失败时具体出现的问题。这是 Objective - C 以及 Swift 2.0 之前版本的主要错误处理模式,若只需指示操作的成功或失败,这种模式依然有效。
1.1 为 drinking()
方法添加错误处理
以 Drink
结构体的 drinking()
方法为例,我们可以使用布尔返回值来指示是否成功喝到饮料。返回值为 true
表示操作成功, false
表示失败。以下是具体实现:
mutating func drinking(amount: Double) -> Bool {
guard amount <= volume else {
return false
}
volume -= amount
return true
}
在这个方法中,使用 guard
语句验证要喝的量是否小于或等于饮料剩余的量。若不满足条件,返回 false
;否则,从剩余量中减去喝掉的量并返回 true
。
下面是调用该方法并检查错误的示例: