空合运算符(a ?? b)将对可选类型 a 进行空判断,如果 a 包含一个值就进行解封,否则就返回一个默认值 b。表达式 a 必须是 Optional 类型。默认值 b 的类型必须要和 a 存储值的类型保持一致。
等价于:
a != nil ? a! : b
当可选类型 a 的值不为空时,进行强制解封(a!),访问 a 中的值;反之返回默认值 b。
注意: 如果 a 为非空值(non-nil),那么值 b 将不会被计算。这也就是所谓的短路求值。
等价于:
a != nil ? a! : b
当可选类型 a 的值不为空时,进行强制解封(a!),访问 a 中的值;反之返回默认值 b。
注意: 如果 a 为非空值(non-nil),那么值 b 将不会被计算。这也就是所谓的短路求值。