Swift guard 应用

声明: 
      1>  guard  必须使用在函数里面
      2> guard  语句必须带有else语句   
语法如下:
       · 当条件表达式为 true 时跳过 else 语句内容,执行语句组内容
       · 条件表达式为 false 时执行 else 内容, 跳过语句一般为 return 、break、continue、throw.
例子:
  // 如果一个人想去网吧玩游戏  要检查他是否成年,是否带有身份证
    func check(_ age: Int, idCard: Bool){
        // 传统逻辑判断 首先判断有没有18岁
        if age >= 18 {
            // 继续判断有没有带身份证
            if idCard {
                print("可以上网")
            }else{
                print("没带身份证")
            }
        }else{
            print("未成年人")
        }
    }

    // 使用 guard 判断
    func check(_ age: Int, idCard: Bool){
        // 当 age 条件不满足时 直接跳出 不在执行接下来的操作
        guard age >= 18 else {
            print("未成年人")
            return
        }
        // 当 age 满足条件 idCard 不满足条件时 也不在执行接下来的操作
        guard idCard else {
            print("没带身份证")
            return
        }
        // 两个条件都满足
        print("可以上网")
    }
    // 两个对比 guard 在逻辑判断中比 if 简便
    // 但个人习惯问题 还是自己选择自己能懂的逻辑

你可能感兴趣的:(Swift guard 应用)