gpt4 book ai didi

json - 快速编码 : Is it possible to get dictionary key:values in order returned in json response?

转载 作者:行者123 更新时间:2023-12-04 09:07:27 25 4
gpt4 key购买 nike

我收到这样的 JSON 响应

"dict": [ 
"key1" : "val1",
"key2" : "val2",
...
]
服务器总是以有序的方式返回这个字典 key1, key2, ...
是否可以按顺序解析此字典。
我可以用
try container.decode([String: String].self, forKey: .dict)
但这是无序解析
我也尝试使用嵌套容器
try container.nestedContainer(keyedBy: DynamicCodingKey.self, forKey: .dict)

struct DynamicCodingKey: CodingKey {

var stringValue: String
var intValue: Int?

init?(intValue: Int) {
self.intValue = intValue
self.stringValue = "\(intValue)"
}

init?(stringValue: String) {
self.stringValue = stringValue
self.intValue = Int(stringValue)
}
}
但是 KeyedDecodingContainer<DynamicCodingKey>当我使用 .allKeys 获取它们时,似乎也存储了无序的键像标准的HashTable。

最佳答案

Server always returns this dict in ordered manner key1, key2, ... Is it possible to parse this dict in ordered manner.


字典本质上是无序的集合。如果您从字典中获取键数组,它们可能会以与它们在 JSON 中相同的顺序返回。这甚至可能持续发生。但是你不应该指望它,因为字典是无序的集合。如果您依赖特定的顺序,那么您应该让服务器发送一个数组而不是字典。

关于json - 快速编码 : Is it possible to get dictionary key:values in order returned in json response?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63415990/

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