在c/c++中常用0、null来代表没有值,swift中发展出optional来替代这种有风险的做法
? 和 ! 都可以用来定义optional的变量
!还可以用来强迫解包,不过用!定义的optional表示肯定有值,用!就是省略了那些不必要的检查,但是有风险
var x:Int? = 8
1、差的使用办法
x!+ 2
2、比较差的处理方法
if x != nill {
x = x! + 1
}
3、推荐的处理方法
var x:Int? = 8
if let myNumber = x {
myNumber + 1
}
highScore = loadedScore != nil ? loadedScore! : 0
highSrore = loadedScore ?? 0
本文介绍了Swift语言中Optional类型的使用方法,对比了C/C++中表示空值的方式,并详细讲解了如何安全地处理Optional变量,避免运行时错误。通过具体示例展示了如何正确地使用Optional变量及其解包操作。
4万+

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



