swift

swift之guard用法

2022-06-15  本文已影响0人  小羊爱学习

guard是什么?
1.guard是 swift 2.0推出的新的判断语句的用法。guard语句和if语句类似,都是根据关键字之后的表达式的布尔值决定下一步执行什么。和if语句不同的是,guard语句只有一个代码块,
而if语句可有多个代码块。(如 if 、else if、 else)
2.那么guard到底是什么作用呢?顾名思义,guard是作为保卫作用而存在的。当你不满足我的要求,那么请您出去;如果满足,则执行下一步操作。
guard与if相比好在哪里
1.guard可以把不符合条件的处理事件前置,以免程序猿在开发中有遗漏的情况出现。
2.guard还可以减少条件语句中的嵌套数量,使代码更简洁易读。

例子:
传统if-else方式

func nonguardSubmit() {
    if let name = nameField.text {
        if let address = addressField.text {
            if let phone = phoneField.text {
                sendToServer(name, address: address, phone: phone)
            } else {
                show("no phone to submit")
            }
        } else {
            show("no address to submit")
        }
    } else {
        show("no name to submit")
    }
}

guard方式:

func submit() {
    guard let name = nameField.text else {
        show("No name to submit")
        return
    }

    guard let address = addressField.text else {
        show("No address to submit")
        return
    }

    guard let phone = phoneField.text else {
        show("No phone to submit")
        return
    }

    sendToServer(name, address: address, phone: phone)
}
上一篇 下一篇

猜你喜欢

热点阅读