类型“任何”不符合协议“序列”
Posted
技术标签:
【中文标题】类型“任何”不符合协议“序列”【英文标题】:Type 'Any' doesn't conform to protocol 'Sequence' 【发布时间】:2016-09-21 15:40:28 【问题描述】:我的代码有问题,在尝试解析 JSON 数据(数组的每个数据,例如应该如何完成)并尝试设置 for in 循环时,出现错误。这是我的代码
if let jsonDataArray = try? JSONSerialization.jsonObject(with: data!, options: [])
print(jsonDataArray)
var allStops = [busStops]()
for eachData in jsonDataArray
^
//this is where the error is located
if let jsonDataDictionary = eachData as? [String : AnyObject]
let eachStop = busStops(jsonDataDictiony: jsonDataDictionary)
【问题讨论】:
【参考方案1】:将jsonDataArray的类型直接指定为[[String: Any]]
,这样试试。
if let jsonDataArray = try? JSONSerialization.jsonObject(with: data!, options: []) as? [[String: Any]]
for eachData in jsonDataArray
let eachStop = busStops(jsonDataDictiony: jsonDataDictionary)
【讨论】:
谢谢,它对我有用。如果让角=barcodeMetadataObject.corners 为? [[字符串:任意]]以上是关于类型“任何”不符合协议“序列”的主要内容,如果未能解决你的问题,请参考以下文章
尝试符合可等式泛型 Set 时,类型“任何”不符合协议“等式”
Text 或 Image 等视图类型如何符合 SwiftUI 中的 View 协议?