swift 錯(cuò)誤處理

swift 錯(cuò)誤處理wiki

1 表示并拋出錯(cuò)誤:
錯(cuò)誤用通過符合ErrorType協(xié)議的類型的值來表示,通過throw拋出一個(gè)錯(cuò)誤


2 處理錯(cuò)誤:四種方式處理錯(cuò)誤
1)通過拋出錯(cuò)誤將處理錯(cuò)誤放置到調(diào)用該方法的地方處理
此方法拋出錯(cuò)誤,在需要調(diào)用的地方處理錯(cuò)誤

func lastEmement(array: [Int]) throws -> Element {
guard array == nil || (array != nil && array.count == 0) {
throw ErrorType
}
guard var element: Int = array.lastElement() else {
throw ErrorType
}
}
func getLastElement() {
try lastElement()   // 此處拋出的錯(cuò)誤將繼續(xù)傳遞下去
}

2)通過 do-catch 處理錯(cuò)誤



3)將錯(cuò)誤作為可選類型處理



4)斷言此錯(cuò)誤不可能發(fā)生
let var error = try! someThrowFunc()

3 指定清理操作(defer): 使用defer語句在即將離開當(dāng)前代碼塊時(shí)執(zhí)行一系列語句, 此語句不管是何種原因退出break、return或者發(fā)生錯(cuò)誤等都將執(zhí)行


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容