gpt4 book ai didi

ios - 条件函数不返回任何内容,语法正确吗? iOS

转载 作者:搜寻专家 更新时间:2023-11-01 06:43:12 24 4
gpt4 key购买 nike

与其写一个大的“if”语句,我想知道这个语法是否正确?如果不遵守条件,我只使用返回这个词。

@IBAction func SignUpAction(sender: AnyObject) {

if passwordField1.text != passwordField2.text {
// password dont match
// Pop error
return
}

let user = PFUser()
user.username = emailField.text
user.password = passwordField1.text

user.signUpInBackgroundWithBlock { (suceeded: Bool, error: NSError?) -> Void in
if error == nil {
// Log the user
}else{
// Display an error
}
}
}

或者我需要这样写:

@IBAction func SignUpAction(sender: AnyObject) {

if passwordField1.text == passwordField2.text {

let user = PFUser()
user.username = emailField.text
user.password = passwordField1.text

user.signUpInBackgroundWithBlock { (suceeded: Bool, error: NSError?) -> Void in
if error == nil {
// Log the user
}else{
// Display an error
}
}
}else{
// Error : password dont match
// Pop error
}
}

如果需要尝试很多条件,第一种语法更清晰,但我不确定这样写代码是否好。谢谢

解决方案:(在“守卫”上使用亚光答案和 Apple Doc:第一条语句需要这样写:

guard passwordField1.text == passwordField2.text else {
print("pop error")
return
}

最佳答案

实际上,我会使用第一种语法,表示为 guard 语句:

guard passwordField1.text == passwordField2.text else { return }

这正是 guard 的用途:如果不满足条件,则不再继续。一连串的多个 guard 语句(因为必须满足多个条件)是非常标准的。

关于ios - 条件函数不返回任何内容,语法正确吗? iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33573640/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com