繁体   English   中英

如何将两个单独的数组组合成单个字典?

[英]How to combine two separate arrays to single array of dictionaries?

给定两个单独的数组,我想将它们合并为一个字典数组。

例如,给定:

var array = ["myDataOne", "myDataTwo", "myDataThree", "myDataFour"]

var array_second = ["apple", "banana", "orange", "kiwi"]

我希望我的数组看起来像:

dictionnary[0] -> dataOne: "myDataOne", dataSecond: "apple"
dictionnary[1] -> dataOne: "myDataTwo", dataSecond: "banana"
dictionnary[2] -> dataOne: "myDataThree", dataSecond: "orange"
dictionnary[3] -> dataOne: "myDataFour", dataSecond: "kiwi"

我正在使用Xcode 7 B5在Swift 2中进行编码。

编辑 :只是为了澄清,实际上最终数组应如下所示:

[[dataOne: "myDataOne", dataSecond: "apple"],[dataOne: "myDataTwo", dataSecond: "banana"],[dataOne: "myDataThree", dataSecond: "orange"],[dataOne: "myDataFour", dataSecond: "kiwi"]]

因此array[0]必须返回类似[dataOne: "myDataOne", dataSecond: "apple"] ,如果我执行array[0].dataOne则它必须返回“ myDataOne”。

典型的程序方法是:

var result = [[String: String]]()
for var i = 0; i < array.count; i++ {
    result.append(["dataOne": array[i], "dataSecond" : array_second[i]])
}

-

您还可以在功能上执行此操作:

let result = zip(array, array_second).map { ["dataOne" : $0.0, "dataSecond" : $0.1] }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM