您的位置:首页 > 移动开发 > Swift

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

2017-09-15 20:14 471 查看
摘抄: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)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: