"!"表示这个可选变量存在,可以使用,如果用"!"访问不存在的可选变量会导致一些错误
"?"表示这个变量可能不存在,如果不存在,"?"所在语句后面的内容都不会执行
!是一个强制拆包,告诉编译器我绝对肯定代码能够执行, 如: strValue!.hashValue ,如果不能执行则报错。
?是表示一个不确定,strValue?.hashValue 就等于OC的if(strValue){ [strValue hashValue]; } 有就执行,有没后面代码就不执行。 不会报错。
本文详细解释了Swift语言中可选链(?操作符)和强制拆包(!操作符)的区别与应用场景。通过具体示例展示了如何使用这两个操作符来处理可选类型变量,避免运行时错误。

2153

被折叠的 条评论
为什么被折叠?



