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

2024-03-06

有一个类叫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将该数组中的所有对象放入一个新数组中。

我也发现这个类似question https://stackoverflow.com/q/9890330/1077789。但它是在 Objective-C 中,所以它使用valueForKeyPath来实现这一目标。

我怎样才能在斯威夫特做到这一点?


您可以使用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 }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从对象数组中获取属性值数组 的相关文章

随机推荐

  • 在RaspberryPi上连接华为E3372

    我尝试使用华为 e3372 的 LTE 棒连接到互联网 我安装了 usb modeswitch ppp 和 wvdial modewswitch 工作正常 该设备安装在 dev ttyUSB0 上 我可以在其中发送 AT 命令 我想使用 w
  • 收到“此应用程序正在从后台线程修改自动布局引擎”错误?

    在我的 OS X 中使用 swift 经常遇到这个错误 此应用程序正在从后台线程修改自动布局引擎 这可能会导致引擎损坏和奇怪的崩溃 这将在未来的版本中导致异常 我有一个我的NSWindow我正在交换观点contentView窗户的 我得到了
  • 当鼠标悬停时,Chartjs 显示标签和单位统计

    当我的鼠标指针悬停在图表上时是否可以显示标签和单位 目前只有数字 对于下面的例子 我想展示 58 标签1 0 标签2 0 标签3 0 标签4 0 标签5 我的选项如下所示 var options Boolean Show a backdro
  • 如何在 Java 代理中包含自行创建的 Java 文件

    In IBM Notes if I create a Java Agent how do I then include my own created java files 所以我创建了一个 cxmlCustom 包 我想将其包含在 prof
  • 如何在android中动态画线[重复]

    这个问题在这里已经有答案了 可能的重复 如何在android中画一条线 https stackoverflow com questions 3616676 how to draw a line in android 我必须匹配两个选项 就像
  • 通过膨胀布局创建自定义视图?

    我正在尝试创建一个自定义视图来替换我在多个地方使用的特定布局 但我正在努力做到这一点 基本上 我想替换这个
  • 带有 LaTeX 文本的参考文献

    在 LaTeX 中 您可以通过使用轻松引用某个部分 label 旁边的一个部分 然后 ref 创建参考 但是 参考文献仅包括节号或带有以下内容的页码 pageref 我想插入包含该部分文本的参考 Example section My Sec
  • 使用C#正则表达式删除HTML标签

    如何使用 C 正则表达式替换 删除所有 HTML 标记 包括尖括号 有人可以帮我解决代码吗 正如前面经常提到的 不应使用正则表达式来处理 XML 或 HTML 文档 它们在处理 HTML 和 XML 文档时表现不佳 因为无法以通用方式表达嵌
  • 相当于 VB.NET 中的 MoveNext

    由于 Recordset MoveNext 函数在 VB NET 中不再可用 在互联网上搜索了很多 我想要一种方法来解决我的问题 使用 MSSQL 刚刚在 SQLDATASET 不支持的地方看到 movenext 函数 我想使用类似于 Mo
  • 当我在线加载页面时,“web.config”文件出错

    我是 ASP NET 4 0 的新手开发人员 我开发了一个网站 它完全可以在我的本地系统中运行 但是现在我将所有文件上传到服务器 当我加载任何页面时 会出现错误网页配置 file 我的 Web Config 代码是这样的
  • Xcode 3.1.4 缺少代码签名权利选项?

    我使用的是 Xcode 3 1 4 并遇到了可怕的 可执行文件已使用无效权利签名 错误 我正在尝试在 BUILD 选项中添加 Entitlement plist 但我找不到放置它的位置 该选项曾经存在于 代码签名身份 之上 我认为它被称为
  • 用于网站流媒体的免费音频播放器

    我可以在我的网站中使用免费的音频播放器吗 它们可以定制吗 我听说过 Soundmanager 2 它是一个基于 Flash 的播放器 带有 JavaScript 前端 还有其他类似的免费播放器吗 如果您想要不需要加载 Flash 插件的东西
  • 何时以及为什么应该在 Scala 中使用 Applicative Functors

    我知道Monad在Scala中可以表示如下 trait Monad F def flatMap A B f A gt F B F A gt F B 我明白为什么它很有用了 例如 给定两个函数 getUserById userId Int O
  • 如何在 .NET 中表示一个非常大的整数?

    NET 是否提供了能够表示极大整数 例如 100 阶乘 的类 如果没有 有哪些好的第三方库可以实现这一点 NET 4 有一个大整数 http msdn microsoft com en us library system numerics
  • asp.net 添加 ApiController 作为依赖注入的服务

    你好 我走了本指南 http scottdorman github io 2016 03 17 integrating asp net core dependency injection in mvc 4 将 asp net core 依赖
  • 使用类先验优化输入图像

    我正在尝试实现谷歌博客条目的第一部分起始论 深入探讨神经网络 https research googleblog com 2015 06 inceptionism going deeper into neural html在 TensorF
  • 符号链接检查 - Linux Bash 脚本

    我正在尝试创建一个脚本来搜索目录以查找指向不存在对象的符号链接 我的目录中有一个文件 其中的符号链接已删除 但由于某种原因 当我运行下面的脚本时 它说文件存在 bin bash ls l 1 if d 1 then while read f
  • MySQL 查询将值与前一行的值进行比较

    我一直在寻找 但一直无法找到解决方案 我知道这是可行的 但我只是还没有我需要的忍者 SQL 技能 我正在寻找此问题的解决方案 我有两个与股市数据相关的表 第一个是带有 ID 和股票代码 ID SYMBOL 的简单股票代码列表 第二个表包含每
  • JavaScript 样式/优化:String.indexOf() v. Regex.test()

    我最近遇到了这段 JavaScript 代码 if gt lt lt gt indexOf sCompOp 1 我很感兴趣 因为要编写这个测试 我会这样做 if gt lt lt gt test sCompOp 这只是风格上的差异 还是其他
  • 从对象数组中获取属性值数组

    有一个类叫Employee class Employee var id Int var firstName String var lastName String var dateOfBirth NSDate init id Int firs