optional 多值判断机制优化

来源:互联网 发布:360vr全景通源码 编辑:程序博客网 时间:2024/06/05 07:42

guard:
@IBAction func saveButtonTapped(_ sender: Any) {
guard let title = titleTextField.text,
title.count > 0,
let author = authorTextField.text,
author.count > 0 else {
return
}
book = Book(title: title, author: author)
performSegue(withIdentifier: PropertyKeys.unwind, sender: self)
}

if let:

@IBAction func saveButtonTapped(_ sender: Any) {
if let name = nameTextField.text,
let employeeType = employeeType {
employee = Employee(name: name, dateOfBirth: dobDatePicker.date, employeeType: employeeType)
performSegue(withIdentifier: PropertyKeys.unwindToListIndentifier, sender: self)
}
}

利用 ?? (nil-coalescing operator)设定预设值:

var registration: Registration {

let firstName = firstNameTextField.text ?? ""let lastName = lastNameTextField.text ?? ""return Registration(firstName: firstName,                        lastName: lastName)

}

原创粉丝点击