在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