gpt4 book ai didi

ios - 在 swift 中初始化一个具有数组作为属性的自定义对象

转载 作者:行者123 更新时间:2023-11-30 13:35:32 27 4
gpt4 key购买 nike

创建了一个名为员工的类,如下所示:

class Employees: NSObject {

var name: String
var employeeRoles: [String]
var departmentID: Int

init(name:String, employeeRoles:[String], departmentID:Int){
self.name = name
self.employeeRoles = employeeRoles
self.departmentID = departmentID
}
}

在 View 中,有一个文本字段,您可以在其中输入员工角色(当然是字符串)。我试图将哪些信息输入到其各自的字段中,创建一个新的员工对象并将其打印到调试控制台。然而,我们尝试将字符串输入到 View 中的以下行使程序崩溃,并且没有提供任何有关原因的进一步信息:

let newEmployee = Employees(name:  (employeeFirstNameInputField.text! + " " +  (employeeLastNameInputField.text)!), employeeRoles:  (employeeListingInputField.text as? [String])!, departmentID: 0)

print(newEmployee.name)

我哪里出错了?

最佳答案

假设您的文本字段被声明为 weak var textField: UITextField!,那么您将像这样创建新员工。

let name = employeeFirstNameInputField.text + " " +  employeeLastNameInputField.text
let listings = employeeListingInputField.text.componentsSeparatedByString("\n")
let newEmployee = Employees(name: name, employeeRoles: listings, departmentID: 0)

您需要将列表文本字段中返回的字符串拆分为字符串数组。每个新的数组元素都由换行符分隔。还有其他方法可以做到这一点(例如调用 split)。

关于ios - 在 swift 中初始化一个具有数组作为属性的自定义对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36118020/

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