Swift虽然和OC在实现功能上用到的几乎是的类的属性和方法,但是在写法上就存在着巨大的区别,其中就有抛出异常的处理写法上,下面就是它的正确写法
(1)Swift写法
// 抛出异常
do {
let dic:NSDictionary = try NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers) as!NSDictionary
print("json解析正确")
}catch let error as NSError {
print("json解析出错")
}
(2)OC写法
NSError *error = nil;
NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&error];
if (error == nil) {
NSLog(@"json解析正确");
}
else {
NSLog(@"json解析错误");
}
上面Swift和OC的是相同的,只不过Swift中必须得着样写,上面两种方式达到的效果是相同的。