【发布时间】:2018-10-06 19:44:58
【问题描述】:
我得到了这个 JSON:
{
"test":{
"0":{
"test":"test"
}
}
}
JSON 中的键只能是字符串,所以当我检索这个 json 时,我得到了以下声明:
let myJson = [String: [String: Any]]()
现在我想过滤掉所有可以转换为整数的键,所以我要使用的字典是:
let myJson2 = [Int: [String: Any]]()
我如何 compactMap/filter myJson 到 myJson2 过滤掉所有 Int 键并复制值?我得到了这个:
var myJson2 = [Int: [String: Any]]()
for (key, value) in myJson {
guard let keyInt = Int(key) else { return }
myJson2[keyInt] = value
}
但我正在寻找一种使用 compactMap 的解决方案,它可以在 1 行中完成
【问题讨论】:
标签: swift dictionary