swift异常处理

原创 Laughing  2017-07-09 19:11  阅读 68 次 评论 0 条

swift中所有异常都由Error协议来指定。通过Error协议自定义异常类型。

定义协议类型

  1. enum MyError:Error{  
  2.     case DestoryError  
  3.     case NormalError  
  4.     case SimpleError  
  5. }  

定义可抛出异常的函数

  1. func MyFunc(param:Bool) throws ->Void{  
  2.     if param{  
  3.         print("success")  
  4.     }else{  
  5.         throw MyError.NormalError  
  6.     }  
  7. }  
  8.   
  9. do{  
  10.     try MyFunc(param: false)  
  11. }catch MyError.SimpleError{  
  12.     print("SimpleError")  
  13. }catch MyError.NormalError{  
  14.     print("NormalError")  
  15. }catch MyError.DestoryError{  
  16.     print("DestoryError")  
  17. }catch{  
  18.     print("OtherError")  
  19. }  

if let结合try?使用

  1. if let _ = try? MyFunc(param: false){  
  2.     print("success")  
  3. }else{  
  4.     print("false")  
  5. }  
本文地址:https://www.lisen.me/462.html
版权声明:本文为原创文章,版权归 木子网 所有,欢迎分享本文,转载请保留出处!

发表评论


表情