我有一个名为messageDict的属性,有时它会因为该应用程序崩溃而获得nil值。有人可以建议我如何妥善处理它。
var messageDict : [String : NSArray]?
if let messageDict = messageDict {
let messageArray = messageDict[outBoxId]! as! [MCOIMAPMessage] // crash indicates here
}
如果数据可用,我将存储在数据下面。有时它会是零
Message-ID: CABQG1ZJT0a7=NExme6VWA6iRpe6Du5LViuA9kZf-QbqOyX1RfQ@mail.gmail.com
References: [dca79b0a-ea55-a4f6-aef3-9097559148f5@peoplelogic.in,CABQG1ZKpat9nGSOjs-Q341bmn0vkiVH+CdFpu2JgkC92KO_K=Q@mail.gmail.com]
In-Reply-To: [CABQG1ZKpat9nGSOjs-Q341bmn0vkiVH+CdFpu2JgkC92KO_K=Q@mail.gmail.com]
答案 0 :(得分:5)
不要强行打开它,试着先检查是否有东西
if let messageDict = messageDict, let messageArray = messageDict[outBoxId] as? [MCOIMAPMessage] {
}
答案 1 :(得分:1)
用警卫打开/如果安全的话。
var messageDict : [String : NSArray]?
guard let message = messageDict else {
return
}
guard let messageArray = message[outBoxId] as? [MCOIMAPMessage] else {
return
}