美文网首页
Swift中的 ??

Swift中的 ??

作者: HongCuiMao | 来源:发表于2016-04-05 11:51 被阅读17次

初学Swift时看别人的代码发现如下的写法:

param.UserId = account.UserId ?? "332";

一个“?”号知道是打包的意思,因为Swift一门严谨的语言,Swift使用var定义变量时,不会自动给变量赋初始值,要求使用变量之前必须要对其初始化。如果不进行初始化就会报错,这时可以通过声明为Optional类型在后面加个?号就可以了。

这里的"??"其实是一种空值判断符,判断"??"左边表达式是否为null,如是null则取右边表达式的值,否则就取左边,表达式的值完整的写法如下:

if account.UserId {param.UserId = account.UserId;}

else {param.UserId = "332";}

相关文章

网友评论

      本文标题:Swift中的 ??

      本文链接:https://www.haomeiwen.com/subject/bejplttx.html