Memory 在swift中是否有一种简洁的方式来展开和分配?
我在swift中有一段难看(但仍在工作)的展开代码:Memory 在swift中是否有一种简洁的方式来展开和分配?,memory,swift,Memory,Swift,我在swift中有一段难看(但仍在工作)的展开代码: var color = UIColor.whiteColor() if ( label.backgroundColor? != nil ) { color = label.backgroundColor! } 有没有比在C++中更简洁的方法来写这个? Swift具有“零聚结运算符”??,该运算符的功能与您的完全相同 您正在寻找: let color = label.backgroundColor ?? UIColor.whiteColo
var color = UIColor.whiteColor()
if ( label.backgroundColor? != nil )
{
color = label.backgroundColor!
}
有没有比在C++中更简洁的方法来写这个?
Swift具有“零聚结运算符”??
,该运算符的功能与您的完全相同
您正在寻找:
let color = label.backgroundColor ?? UIColor.whiteColor()
如中所述,a??b
是
a != nil ? a! : b
其中
b
仅在a==nil
时进行评估(短路评估)。!我错过了阅读文档的机会。非常方便了解。@0O0O0O0:?
仅在Xcode 6 beta 5中引入,因此很容易忽略这一点。
a != nil ? a! : b