在 UserDefaults 中展开时发现 nil
found nil while unwrapping in UserDefaults
我想将日期保存到 userDefaults。
按钮(动作:{
var date = Date()
if date != nil{
date = UserDefaults.standard.object(forKey: "myDate") as! Date
}
print(date)
}) {
........(design stuff)
}
也进行了测试:let date = UserDefaults.standard.object(forKey: "myDate") as!日期
但是在展开可选值时,我总是意外地发现 nil。
在使用 !
强制施放之前,检查对象在 UserDefaults
中是否可用。始终使用 if let
或 guard let
.
安全地转换可选值
保存日期:
UserDefaults.standard.set(myDate, forKey: "myDate")
检索日期:
if let object = UserDefaults.standard.object(forKey: "myDate") as? Date {
date = object
} else {
print("No object for key myDate in UserDefaults")
}
我想将日期保存到 userDefaults。
按钮(动作:{
var date = Date()
if date != nil{
date = UserDefaults.standard.object(forKey: "myDate") as! Date
}
print(date)
}) {
........(design stuff)
}
也进行了测试:let date = UserDefaults.standard.object(forKey: "myDate") as!日期
但是在展开可选值时,我总是意外地发现 nil。
在使用 !
强制施放之前,检查对象在 UserDefaults
中是否可用。始终使用 if let
或 guard let
.
保存日期:
UserDefaults.standard.set(myDate, forKey: "myDate")
检索日期:
if let object = UserDefaults.standard.object(forKey: "myDate") as? Date {
date = object
} else {
print("No object for key myDate in UserDefaults")
}