我對swift非常陌生,在我的代碼中,我從某個電子郵件中獲取JSON,JSON數據首先被放入一個數組中,但是如果數組爲空或不存在的JSON數據我得到這個錯誤IOS快速如何檢查空數組同時獲取Json數據
無法投類型的值「NSNull」(0x1067a5748)到「的NSArray」(0x1067a4c58)。
我一直試圖通過閱讀其他帖子,如Check if optional array is empty,但它不工作。這個問題帶有以下
session.dataTask(with:request, completionHandler: {(data, response, error) in
if error != nil {
print(error)
} else {
do {
let parsedData = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! [String:Any]
if let musicJob = parsedData["music"] as! [AnyObject]? {
for S in musicjob {
if let genre = S["genre"] as? String {
self.genres.append(genre)
}
}
}
這段代碼如果JSON是空我的錯誤在這條線就在這裏
if let musicJob = parsedData["music"] as! [AnyObject]?
的musicJob計數的對象,如「30個值或數量44值「等。如果沒有Json,那麼它返回零,它崩潰。 無論如何,我可以捕捉到零值或空數組的值,以便應用程序不會崩潰?只要musicJob數組不爲空,再一次都可以使用。
想想大概意思時刻被迫展開可選到可選('爲[AnyObject]'!?)。除此之外,Swift 3中未指定的JSON類型始終是Any,而不是AnyObject。 – vadian