gpt4 book ai didi

arrays - Swift - 来自 2 个过滤数组的字典

转载 作者:搜寻专家 更新时间:2023-11-01 06:15:54 25 4
gpt4 key购买 nike

idsArr = [ ["id": "12345"], ["id": "27891"],["id": "98654"] ]
idsNameIntvalueArr = [["id": "22913", "name" : "Peter Parker", "value": 15], ["id": "12345", "name" : "Donald Duck", "value": 6], ["id": "98654", "name" : "Mickey Mouse", "value": 9], ["id": "112233", "name" : "Lion King", "value": 9]]

我是 Swift 的新手,请给我建议,按 id 比较这 2 个数组的最佳做法是什么,如果 id 匹配,如何获取里面有字典的数组,结果如下:

resultArr = [["Donald Duck": 6],["Mickey Mouse": 9]] 

如果可能的话,最好是一本字典:

resultdict = ["Donald Duck": 6, "Mickey Mouse": 9]

谢谢。

最佳答案

swift 3.x

let idsArr = [ ["id": "12345"], ["id": "27891"],["id": "98654"] ]
let idsNameIntvalueArr = [["id": "22913", "name" : "Peter Parker", "value": 15], ["id": "12345", "name" : "Donald Duck", "value": 6], ["id": "98654", "name" : "Mickey Mouse", "value": 9], ["id": "112233", "name" : "Lion King", "value": 9]]

var result = [String:Int]()

idsNameIntvalueArr.forEach({ name in
idsArr.forEach({
if name["id"] as? String == $0["id"] { result[name["name"] as! String ] = name["value"] as? Int }
})
})
print(result)

将返回:

["Mickey Mouse": 9, "Donald Duck": 6]

关于arrays - Swift - 来自 2 个过滤数组的字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45146631/

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