美文网首页
swift中的guard语句+隐式解包

swift中的guard语句+隐式解包

作者: 梁森的简书 | 来源:发表于2020-09-05 14:02 被阅读0次

    guard语句

    0.guard语句.jpg
    好处:

    1.进行可选项绑定之后,绑定的变量可以在外层作用域使用。

    2.可减少条件语句的嵌套分支
    如下代码:

    
    if let userName = login.userNameOK {
        if let password = login.passwordOK {
            // 登录处理
            ...
        } else {
            fatalError("login wrong")
        }
    } else {
        fatalError("login wrong")
    }
    
    
    guard 
      let userName = login.userNameOK,
      let password = login.passwordOK,
      else {
        fatalError("login wrong")
    }
    // 登录处理
    ...
    

    隐式解包

    0.隐式解包.jpg

    初始化的时候使用了“!”,再使用的时候就不用再使用“!”进行强制解包了。
    隐式解包并不能保证解包的变量不是nil,只有在确定这个变量不是nil的情况,我们才能放心使用隐式解包。
    尽量少用隐式解包,尤其对于后台返回的数据,使用Optional Binding避免崩溃。

    相关文章

      网友评论

          本文标题:swift中的guard语句+隐式解包

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