gpt4 book ai didi

ios - 如何过滤 dic-filter 数组并附加到单独的 dic 数组

转载 作者:行者123 更新时间:2023-11-29 05:36:32 24 4
gpt4 key购买 nike

我有一个 dic 数组,在我的 dic 中我有一个键称为“state”:测试,“state”:原始。我可能有多个对象。

代码:

var StatusData = [[String: Any]]()
var testStatusData = [[String: Any]]()
var originalStatusData = [[String: Any]]()

我的方法中的小片段:

其中 -> document.data() 是一个 [String:Any]

for document in (querySnapshot! as AnyObject).documents {
print("\(document.documentID) => \(document.data())")
let data = document.data()
self.playersStatusData.append(document.data())
}
print(self.playersStatusData)

现在我需要为 playersStatusData 添加过滤器,并基于状态 - 测试、原始。我需要分离对象并附加到它们各自的 dic 数组中。

如果我的 playersStatusData 中有 4 个 dic 对象。如果 2 个对象的状态为“test”。然后,该特定对象单独需要附加到 testStatusData

同样的另外 2 个对象的状态 =“原始”。然后,该特定对象单独需要附加到originalStatusData

我使用了过滤器 { $0.1 == "original"}。它只是只打印那个键、值。但我需要完整的对象并附加到它们各自的 [String: Any]]。

任何帮助,谢谢。

更新:

 [“test”: 1, “id”: 230, “total”: 1, “crunch”: 1, “name”: Cristina Criado, "Bot": <null>, "state": test,]

[“test”: 3, “id”: 20, “total”: 10, “crunch”: 1, “name”: phasni, "Bot": <null>, "state": original,]

[“test”: 5, “id”: 0, “total”: 00, “crunch”: 1, “name”:picturn, "Bot": <null>, "state": test,]

最佳答案

你可以试试这个

let playersStatusData =  [
["test": 1, "id": 230, "total": 1, "crunch": 1, "name": "A", "Bot": "", "state": "test"],
["test": 2, "id": 231, "total": 1, "crunch": 1, "name": "B", "Bot": "", "state": "original"],
["test": 3, "id": 232, "total": 1, "crunch": 1, "name": "C", "Bot": "", "state": "test"],
["test": 4, "id": 233, "total": 1, "crunch": 1, "name": "D", "Bot": "", "state": "original"],
["test": 5, "id": 234, "total": 1, "crunch": 1, "name": "E", "Bot": "", "state": "test"],
["test": 6, "id": 235, "total": 1, "crunch": 1, "name": "F", "Bot": "", "state": "test"]
]


let dicts = Dictionary(grouping: playersStatusData, by: {$0["state"] as! String})

print(dicts["test"]) // O/P of all state = test in array
print(dicts["original"]) // O/P of all state = original in array
<小时/>

如果有任何问题可以询问。

关于ios - 如何过滤 dic-filter 数组并附加到单独的 dic 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56986984/

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