Swift之Guard

2018-11-04  本文已影响9人  XiaoBaa

GitHub Demo: https://github.com/BaHui/BHSwifter

简介

guard的使用方式和if语句有点类似, 都是根据其之后的条件的是否成立去执行一段代码块, 但是其只有一块代码段, 与else结合使用;

执行条件

  • 仅当条件表达式为 false 时, 执行代码块; 如果为true,则跳过整个guard语句
  • 代码块中结合关键字 return, 不再执行所在函数下面的所有代码

使用示例

    override func viewDidLoad() {
        super.viewDidLoad()
        let person = Person(name: "小张", identifyNumber: "42637488847654667")

        // 使用if - else
        if person.identifyNumber.isEmpty {
            print("if - 无身份证号")
        } else {
            print("if - 有身份证号")
        }
        // 输出: if - 有身份证号


        // 使用gurad
        guard person.identifyNumber.isEmpty else {
            print("guard - \(person.name)无身份证号")
            return
        }
        // 输出: guard - 小张无身份证号
    }

交流与建议

上一篇下一篇

猜你喜欢

热点阅读