1

我正在检查这样的 nil 对象:

if let _ = object {
    // Nothing to do here.
} else {
    // There's something that must be done here.
}

我想删除该部分let _ = object,因为它里面没有任何东西可以执行。除了使用之外,使用if object == nil可选检查来验证某个对象是否是的最佳方法是nil什么?

4

2 回答 2

4

如果您的唯一目的是检查对象是否为nil,并且从不需要展开的值,那么简单的比较nil 最简单的方法:

if object == nil {
    print("Warning: object is nil")
}

如果你想强调这个检查是一个前提条件,如果条件不满足,你想离开当前范围,那么你可以使用guard语句。但是没有必要将对象解包到未使用的变量:

guard object != nil else {
    print("Warning: object is nil")
    return
}
于 2015-11-24T09:21:52.467 回答
2

您可以为此目的使用保护语句

guard let _ = object else {
    // Do something
    return
}
于 2015-11-24T08:31:26.627 回答