美文网首页
Swift 基础(2) -- 异常处理

Swift 基础(2) -- 异常处理

作者: 王世军Steven | 来源:发表于2017-03-19 09:47 被阅读2次

    Swift中的异常处理有三种方式

    • 方式一 : try 方式,程序员手动捕获异常,但是这种方式不是很方便.
    do {
          // 使用 try 方式处理.
          let regex1 = try NSRegularExpression(pattern: "abc", options: .caseInsensitive)
    } catch{
          print(error)
    }
    

    (1) do中包裹的是可能发生异常的代码.
    (2) catch 中是发生异常时要这行的代码.

    • 方式二(不建议使用,很危险) : try! 方式,表明此处一定不会抛出异常,但是这种方式很危险,一旦有异常抛出程序就会崩溃.
    // 使用 try!  
    let regex2 = try! NSRegularExpression(pattern: pattern, options: .caseInsensitive)
    

    这种方式,只有当你确定不会产生异常时才可以使用,因为使用这种方式如果一旦发生异常程序便会崩溃.

    • 方式三 (常用): try? 方式,系统帮助我们处理异常,如果发生异常,将返回nil,否则返回对象.
    // 使用 try?
    guard let regex3 = try? NSRegularExpression(pattern: pattern, options: .caseInsensitive) else {
          return
    }
    

    这种方式其实就是讲异常转换成了可选值,如果发生异常就返回 nil.

    相关文章

      网友评论

          本文标题:Swift 基础(2) -- 异常处理

          本文链接:https://www.haomeiwen.com/subject/pulmnttx.html