swift中try

在Swift中存在這樣的關鍵字:try?和try!,他們的應用場景是什麼呢?json

      try?:函數

      1.應用場景:在函數或者方法拋出異常時,能夠把異常轉成一個可選類型,會返回一個nil,程序不會崩潰;若是程序正常,則會返回一個正確的可選類型;spa

  eg:let anyObject = try? NSJSONSerialization.JSONObjectWithData(jsonData, options: .MutableContainers)blog

      2.格式:let+屬性+ try?+函數或者方法;it

      3.注意點:返回的是可選類型,注意和其餘的方法混合使用時出現屢次包裹可選類型的解包問題。io

      try!:table

      1. 意義:打錯錯誤的傳播鏈,try!打破了錯誤傳播鏈條,可是若是真的發生錯誤就出現運行期錯誤,致使程序的崩潰。程序

      2.格式:let+屬性+ try!+函數或者方法;方法

  3.注意點:若是真的發生錯誤就出現運行期錯誤,致使程序的崩潰。im

相關文章
相關標籤/搜索