不知道为什么这不会起作用。这个字典的值是一个键,但每当我尝试转换为数组时,我都会遇到很多错误。以下是我尝试过的内容,每个示例都会出现错误(在所有示例中,parameters
都是[String : Any]
类型:
let paramsArray = parameters["inputVO"] as AnyObject
if let array = paramsArray as? Array {
}
错误:Generic parameter 'Element' could not be inferred in cast to 'Array<_>'
if let array = parameters["inputVO"] as? Array {
}
错误:Ambiguous reference to member 'subscript'
我不确定将结果转换为数组还能做些什么?我确定我以前做过这个,我不知道为什么会失败。非常感谢任何帮助。
编辑:这是我打印params
时的输出。正如预期的那样,它填充了Array
个Dictionary
。
Optional([["stmtDate": cmd, "transId": identifier, "isSupplementDataAvailable": true]])
答案 0 :(得分:1)
它是一个数组
if let array = parameters["inputVO"] as? [[String:Any]] { ... }
或字典
if let dictionary = parameters["inputVO"] as? [String:Any] { ... }
这两种类型都是泛型,需要特定的类型信息
[[String:Any]]
是Array<Dictionary<String,Any>>
[String:Any]
是Dictionary<String,Any>