[英]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.