【发布时间】:2017-05-06 14:48:16
【问题描述】:
我正在用一些自定义对象创建一个 Swift Dictionary。
下面是我定义字典的地方;
var carDictionary:[String:Any] = Dictionary<String, Any>()
下面的 for 循环是我试图从我的自定义对象中填充字典的地方:
for dataPoint in dataPoints! {
carDictionary[dataPoint.value(forKey: dataPoint.dataKey)]
}
dataPoint 是以下类的一个实例:
public class NACarDataPoint: NSObject {
var dataKey: String!
var dataValue: Any!
public override init() {
// generic initializer, generally designed to be overridden
super.init()
}
init(key: String, value: Any) {
self.dataKey = key
self.dataValue = value
}
}
我得到了
公认的一些常见错误`Cannot subscript a value of type `[String : Any]` with an index of type `Any`?`
但是,我认为我对在 Swift 中如何创建字典的理解有一些缺失,这使我无法弄清楚问题所在 - 有人有什么建议吗?谢谢!
有类似问题的帖子: String not convertible to [AnyObject]
Cannot subscript a value of type '[String : String]?' with an index of type 'String'
Cannot subscript a value of [AnyObject]? with an index of type Int
【问题讨论】:
标签: swift dictionary foundation