许多语言中的一个共同特征是Null Coalescing Operator,它是一个二进制运算符,通常用于缩短类型的表达式:
x = possiblyNullValue NCO valueIfNull
Run Code Online (Sandbox Code Playgroud)
...这NCO是语言的空合并运算符的占位符.
Objective C的Null Coalescing运算符是?:,所以表达式为:
x = possiblyNullValue ?: valueIfNull
Run Code Online (Sandbox Code Playgroud)
上面的表达式也相当于使用第三运算符:
x = someTestForNotNull( possiblyNullValue ) ? possiblyNullValue : valueIfNull
Run Code Online (Sandbox Code Playgroud)
swift ×1