throws

在做swift 的開發的時候 有的時候 有些方法會顯示throws ,意思就是有可能會拋出異常,所以在遇到有throws 的方法中需要時用try catch

do{
}
catch{
// 只要do 里的事情,發生了異常就會調用catch里面的方法
}

在做swift 開發中經常會有拋出異常的狀況

try 有三種

try  正常處理,也就是通過 do catch 來處理
try!  告訴系統一定不會有異常, 也就是說可以不通過 do catch 來進行處理,但是一旦出現錯誤,程序會直接crash掉
try? 告訴系統可能會有異常,也可能不會有錯誤,如果沒錯,系統會直接將結果自動包裝稱一個可選類型,如果程序出現錯誤,則會返回一個nil  ,同時 使用了 try? 可以不在使用 do catch 來處理

但是在開發中,本人更建議使用do catch 的方法來進行處理

        do{
            let objcstrng = try JSONSerialization.jsonObject(with: jsonData as Data, options: JSONSerialization.ReadingOptions.mutableContainers)

            STLog(message: "\(objcstrng)")
        }catch{
            // 只要 do 里的事情發生了異常 就會調用這個方法
        }
        
這個里面使用的是try! 但是當jsonData 為空的時候 會直接crash
        let objcstring = try!   JSONSerialization.jsonObject(with: jsonData as Data, options: JSONSerialization.ReadingOptions.mutableContainers)
        STLog(message: objcstring)
let objcstring = try?   JSONSerialization.jsonObject(with: jsonData as Data, options: JSONSerialization.ReadingOptions.mutableContainers)
STLog(message: objcstring)
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容