我有两个数组喜欢[1, 2, 3]和["a", "b", "c"]我想的压缩值映射过(1, "a"),(2, "b")和(3, "c")使用ZIP2.
如果我这样做:
let foo = map(Zip2([1, 2, 3], ["a", "b", "c"]).generate()) { $0.0 }
Run Code Online (Sandbox Code Playgroud)
foo有类型ZipGenerator2<IndexingGenerator<Array<Int>>, IndexingGenerator<Array<String>>>?.
有没有办法让这个数组?
以下将从Zip2的返回值获取一个数组:
var myZip = Zip2([1, 2, 3], ["a", "b", "c"]).generate()
var myZipArray: Array<(Int, String)> = []
while let elem = myZip.next() {
myZipArray += elem
}
println(myZipArray) // [(1, a), (2, b), (3, c)]
Run Code Online (Sandbox Code Playgroud)
- 更新:更好! -
let myZip = Zip2([1, 2, 3], ["a", "b", "c"])
let myZipArray = Array(myZip)
println(myZipArray) // [(1, a), (2, b), (3, c)]
Run Code Online (Sandbox Code Playgroud)
- 现在好玩 -
我猜我们可以使用响应的任何东西初始化一个新数组generate() ?
println(Array("abcde")) // [a, b, c, d, e]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1118 次 |
| 最近记录: |