swift操作符??
发布时间:2020-12-14 05:54:22 所属栏目:百科 来源:网络整理
导读:了解了?和!,又遇到??,说实话感觉很晕~~感觉??就像三目运算符 ?? 操作符的左边是一个 Optional 值,右边是一个普通值,它的作用就是,如果左边的 Optional 值为 nil, 那么就使用右边的普通值作为返回值,如果左边的 Optional 不为 nil,则返回左边的 O
了解了?和!,又遇到??,说实话感觉很晕~~感觉??就像三目运算符 ?? 操作符的左边是一个 Optional 值,右边是一个普通值,它的作用就是,如果左边的 Optional 值为 nil, 那么就使用右边的普通值作为返回值,如果左边的 Optional 不为 nil,则返回左边的 Optional 解包后的值。 例如 var a:Int? print(a ?? 2) 打印2,因为a是可选类型,而且没有给显式赋值操作,所以为nil。当??左边optional值为nil,则取??右边的值。故打印2 同理 var a:Int? = 100 print(a ?? 2) 打印100,因为可选类型a显式赋值为100,??左边optional值不为nil,所以为解包后的值,即100 个人理解??相当于三目运算。例如上边第一个例子可以转换成 print(a == nil ? 2 : a) 即如果a==nil成立,那么取2,如果a==nil不成立,那么取a值 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |