使用Xcode,由於在swift 2.0中接收到零而導致致命錯誤。下面聲明的常數是在應用程序崩潰,因爲mediaItem響應是零點:由於無法快速獲得致命錯誤
let url: NSURL? = NSURL(string: (self.mediaItem?[0].url)!)
如何避免這個問題?
使用Xcode,由於在swift 2.0中接收到零而導致致命錯誤。下面聲明的常數是在應用程序崩潰,因爲mediaItem響應是零點:由於無法快速獲得致命錯誤
let url: NSURL? = NSURL(string: (self.mediaItem?[0].url)!)
如何避免這個問題?
由於(self.mediaItem?[0].url)!
發生了這次事故。如果self.mediaItem?[0].url
返回nil
值,則該語句會發生如下變化:(nil)!
並導致應用程序崩潰。還需要處理數組超出範圍異常,如果mediaItems數組爲空,則可能發生這種情況。
你能解決這個問題,如:
if let mediaArray = self.mediaItem where mediaArray.count > 0
{
if let urlString = mediaArray[0].url
{
let url: NSURL? = NSURL(string: urlString)
}
}
不受任何措施迅速的專家,但我想你會發現本教程中的答案。 http://www.codingexplorer.com/the-guard-statement-in-swift-2/ – user3069232