Arrays Swift 3:来自大型数组的字典

Arrays Swift 3:来自大型数组的字典,arrays,swift,dictionary,swift3,Arrays,Swift,Dictionary,Swift3,我正在使用两个包含以下数据的大型阵列: print(dataID[1]) // ["DataID123"] print(dataAR[1]) // ["73.075584"] 我想通过以下方式从两个数组中形成一个字典: var arrayofDict = [String: AnyObject?]() for i in 0...csvDataID.count { if i < csvDataID.count { let key

我正在使用两个包含以下数据的大型阵列:

print(dataID[1]) // ["DataID123"]
print(dataAR[1]) // ["73.075584"]
我想通过以下方式从两个数组中形成一个字典:

    var arrayofDict = [String: AnyObject?]()
    for i in 0...csvDataID.count {
        if i < csvDataID.count {
            let key     = csvDataID[i]
            let value   = csvDataAG[i]
            arrayofDict[key] = value
        }
    }
我还尝试了其他一些方法,也导致了同样的错误

有人能帮我吗?有没有更有效的方法来处理阵列? 谢谢

解释:

日志显示csvDataID[1]是一个数组:
[“DataID123”]

第二个也一样。:/code>[“73.075584”]

所以

let key=csvDataID[i]//您将密钥设置为数组。


这就是为什么你可以看到这个错误

不相关,但为什么值是可选的?这毫无意义。为一个键指定一个
nil
值将删除该键。
print(dataID[1])//[“DataID123”]
因此
dataID[1]
是一个包含一个对象(字符串)的数组。所以
是一个
[String]
(字符串数组)而不是
字符串
(只是一个字符串)。另外,如果i,您不想对0..csvDataID.count-1中的i执行
而不是每次
测试吗。
Cannot subscript a value to '[String: AnyObject?]' with an index of 
type '[String]'
let key     = csvDataID[i][0]
let value   = csvDataAG[i][0]