ios-Swift处理异常的三种方式

摘抄:Swift 2 中在编译器层级就对 throws 进行了限定。被标记为 throws 的 API,我们需要完整的 try catch 来捕获可能的异常,否则无法编译通过。

1、我们手动的去捕捉异常

        let jsonStr="lll"
        
        let jsonData=jsonStr.data(using: String.Encoding.utf8)
        
        //在Swift中options是存放在数组中,如果我们不想写,直接传入一个空数组就可以
        do
        {
        let result = try JSONSerialization.jsonObject(with: jsonData!, options: [JSONSerialization.ReadingOptions.mutableContainers,JSONSerialization.ReadingOptions.mutableLeaves])
          print(result)
        }
        catch
        {
            print(error)
        }
2、try?尝试try,系统帮我们处理异常,如果发生了异常则会返回nil,如果没有异常就返回相应的对象

let result = try? JSONSerialization.jsonObject(with: jsonData!, options: [JSONSerialization.ReadingOptions.mutableContainers,JSONSerialization.ReadingOptions.mutableLeaves])
 print(result)
3、try! 是强行try,意思就是直接的说不会有异常,如果出现异常则程序会崩溃

 let result = try! JSONSerialization.jsonObject(with: jsonData!, options: [JSONSerialization.ReadingOptions.mutableContainers,JSONSerialization.ReadingOptions.mutableLeaves])
        print(result)







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值