【发布时间】:2020-02-03 13:14:50
【问题描述】:
我有一个用户模型定义如下:
class UserModel: NSObject {
var firsname: String?
var lastname: String?
var mail: String?
}
在我的一个 http 请求中,我将 json 响应捕获为:
guard let mail = jsonArray[0]["mail"] as? String else { return }
因此,当我打印邮件 print(mail) 时,它可以正常工作并打印正确的邮件字符串,但是当我尝试将该电子邮件保存在我的用户属性中时,它会给我一个 nil 值。
guard let mail = jsonArray[0]["mail"] as? String else { return }
self.user?.mail = mail
if let mailUnwrapped = self.user?.mail {
print(mailUnwrapped) // prints nil
}
我错过了什么吗?请提供任何帮助!谢谢你
【问题讨论】:
-
它不能打印
nil,因为如果self.user?.mail的值为nil,它就不会进入if块。