加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

数组 – Swift:在数组中查找值并返回特定键

发布时间:2020-12-14 04:50:34 所属栏目:百科 来源:网络整理
导读:我是 swift的新手,非常感谢你的帮助.. 问题: 在我未来的项目中,我很乐意在数组中查找特定的字符串,并只获取在其爱好数组中具有此值的名称. 我的例子: struct Person {var name: Stringvar hobbies:Set String}var persons: [Person]persons = [Person(name
我是 swift的新手,非常感谢你的帮助..

问题:

在我未来的项目中,我很乐意在数组中查找特定的字符串,并只获取在其爱好数组中具有此值的名称.

我的例子:

struct Person {
var name: String
var hobbies:Set <String>
}

var persons: [Person]

persons = [

Person(name: "Steve",hobbies: ["PC","PS4","Gaming","Basketball"]),Person(name: "Max",hobbies: ["Gaming","Xbox","cooking","PC"]),Person(name: "Julia",hobbies: ["Soccer","Tennis","Painting"])

]

var StringToSearch = "PC"

我很想得到只有爱好“PC”的名字.
如何迭代我的集合并只获取键而不是字典中的值?
谢谢!

解决方法

使用flatMap:

let result = persons.flatMap {
    $0.hobbies.contains(StringToSearch) ? $0.name : nil
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读