0
這是我的代碼。如果默認值沒有保存經緯度,那麼給它一個經度。Swift中Optional(「nil」)的含義是什麼?
問題是錯誤:
fatal error: unexpectedly found nil while unwrapping an Optional value
用下面的代碼後self.lat
和self.lng
時。每次控制檯打印出來是
the saved gps is Optional("nil")
什麼是對Optional("nil")
的意義,並從Optional(nil)
區別?
我使用的Xcode 7.1和斯威夫特2
var lat : String = ""
var lng : String = ""
let defaults = NSUserDefaults.standardUserDefaults()
if defaults.stringForKey("lat") != nil {
self.lat = defaults.stringForKey("lat")!
self.lng = defaults.stringForKey("lng")!
print ("the saved gps is \(defaults.stringForKey("lat"))")
} else {
self.lat = "34.7009333"
self.lng = "135.4942047"
print ("the init gps is \(self.lat) , \(self.lng)")
}
你問一個字符串。所以零包裝爲「零」。 – matt
看起來你正試圖提供默認的默認值。你知道'registerDefaults'嗎? – matt
非常感謝,我更改了代碼,如果defaults.stringForKey(「lat」)!=「nil」,那麼它現在正在工作。 –