-1

我正在尝试使用 Objects(Array) 和相应的键初始化字典。我正在崩溃,它说[NSDictionary initWithObjects:forKeys:]: count对象(12)与键数(1)不同“。不确定我在这里缺少什么。有人可以帮忙吗?

下面是我的代码。

 let df = DateFormatter()
        var months = [Any]()

        for monthIndex in 1...12 {
            months.append(df.monthSymbols[monthIndex - 1])
        }

        let monthDictionay = NSDictionary.init(objects: months, forKeys: ["values" as NSCopying]) 

它在最后一行代码中崩溃。

以下是我想要实现的

我的monthDictionary应该有

values =     (
        January,
        February,
        March,
        April,
        May,
        June,
        July,
        August,
        September,
        October,
        November,
        December
    );
4

1 回答 1

1

您正在使用NSDictionary(不是 Swift 的Dictionary)方法,该方法采用对象数组和匹配的键数组 - 请注意复数!您有一个键,其匹配值是一个数组。只需使用 Swift 字典文字:

let monthDictionary = [ "values" : months ]

注意:您将希望使用var而不是let打算添加更多键和值。

于 2018-05-17T18:14:29.163 回答