swift 中引入了可變類型,定義一個變量的時候,這個變量有可能有值,有可能爲 nil,就在變量類型後面加一個? 表示.
//可選類型的變量,有可能有值,有可能爲 nil
var mySting:String?
print(mySting)
//:不能對值爲 nil 的值強制解包
//print(mySting!)
mySting = "hello ,world"
print(mySting)
print(mySting!)
//: 用!強制解包,這樣打印就不會有 optional 的字樣了
mySting = nil
if mySting != nil{
print(mySting!)
}else{
print("result == nil")
}
值綁定:
如果對一個空值進行強制解包,會崩潰報錯,所以要用一個變量來接收可變類型的變量,放在 if 語句的判斷中,一起使用
//值綁定
// 先判斷值是否爲空,如果爲空,就結束,不走下面的代碼,
mySting = nil
if let newString = mySting{
print(newString)
}
// 如果不爲空,就會把值取出來,賦值給另一個新的值,然後走下面的代碼
mySting = "hi"
if let newString = mySting{
print(newString)
}