在Swift中检查期权的首选方法
在Swift中使用optionals时,似乎有两种方法可以检查可选类型是否为nil在Swift中检查期权的首选方法,swift,optional,Swift,Optional,在Swift中使用optionals时,似乎有两种方法可以检查可选类型是否为nil 我用哪种方法检查可选项重要吗?它们是等效的,但最好使用: 当您实际需要并使用未包装的值时,设x=项可选绑定 项目!=nil,您只需要知道它是否为nil,但不需要它的展开值 通过可选绑定进行解包裹是有代价的,因此,如果不需要该值,就没有理由提取该值并将其分配给变量。另一方面,如果需要该值,最好通过可选绑定只展开一次,并避免使用强制展开 它们是等效的,但最好使用: 当您实际需要并使用未包装的值时,设x=项可选绑定 项
我用哪种方法检查可选项重要吗?它们是等效的,但最好使用: 当您实际需要并使用未包装的值时,设x=项可选绑定 项目!=nil,您只需要知道它是否为nil,但不需要它的展开值
通过可选绑定进行解包裹是有代价的,因此,如果不需要该值,就没有理由提取该值并将其分配给变量。另一方面,如果需要该值,最好通过可选绑定只展开一次,并避免使用强制展开 它们是等效的,但最好使用: 当您实际需要并使用未包装的值时,设x=项可选绑定 项目!=nil,您只需要知道它是否为nil,但不需要它的展开值
通过可选绑定进行解包裹是有代价的,因此,如果不需要该值,就没有理由提取该值并将其分配给变量。另一方面,如果需要该值,最好通过可选绑定只展开一次,并避免使用强制展开 选项一评估您的选项是否不为空,并允许您使用感叹号自动展开它
第二个选项将可选值绑定到指定的变量(如果可选值不同于null) 选项一评估您的选项是否不为空,并允许您使用感叹号自动展开它 第二个选项将可选值绑定到指定的变量(如果可选值不同于null) 这样看: 使用选项A时,系统必须打开可选组件两次。一次检查它是否为零,一次处理 使用选项B,系统在执行分配时只需打开可选项一次 在任何特定情况下,使用代码可以减少编译器打开可选文件的次数。这样看: 使用选项A时,系统必须打开可选组件两次。一次检查它是否为零,一次处理 使用选项B,系统在执行分配时只需打开可选项一次
在任何特定情况下,使用减少编译器打开可选文件的次数的代码。否。这有什么关系?没有。这有什么关系?
var item: String? = "apple"
// Approach A
if item != nil {
"item is \(item!)"
} else {
"no item"
}
// Approach B
if let x = item {
"item is " + x
} else {
"no item"
}