swift中 ?和 !的区别
可选类型(?)与强制解析运算符(!)
?是一种判断后再拆包的语法糖!是一种强制拆包的语法糖
当你不确定有值的时候就可以用 ?
当你确定有值的时候可以用 !
?的几种使用场景:1.声明Optional值变量
2.用在对Optional值操作中,用来判断是否能响应后面的操作
3.用于安全调用protocol的optional方法
4.使用 as? 向下转型(Downcast)
!的使用场景1.强制对Optional值进行拆包(unwrap)
2.声明
Implicitly Unwrapped Optionals值,一般用于类中的属性
day day up!

浙公网安备 33010602011771号