从对象数组获取属性值数组

有一个叫的课程Employee

class Employee {

var id: Int

var firstName: String

var lastName: String

var dateOfBirth: NSDate?

init(id: Int, firstName: String, lastName: String) {

self.id = id

self.firstName = firstName

self.lastName = lastName

}

}

而且我有一系列Employee对象。我现在需要id将数组中所有这些对象的s 提取到新数组中。

我也发现了类似的问题。但是它在Objective-C中,因此可以valueForKeyPath用来完成此任务。

如何在Swift中执行此操作?

回答:

您可以使用map方法,将某种类型的数组转换为另一种类型的数组-在您的情况下,从的数组转换Employee为的数组Int

var array = [Employee]()

array.append(Employee(id: 4, firstName: "", lastName: ""))

array.append(Employee(id: 2, firstName: "", lastName: ""))

let ids = array.map { $0.id }

以上是 从对象数组获取属性值数组 的全部内容, 来源链接: utcz.com/qa/399425.html

回到顶部