如何枚举swift 4中的zip数组以获取每个对象的索引
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何枚举swift 4中的zip数组以获取每个对象的索引相关的知识,希望对你有一定的参考价值。
我需要枚举一个压缩数组来检查数组中每个对象的索引。以下是我的代码请帮帮我。
for((index1, index2),(value1, value2)) in zip(array1, array2).enumerated() {
// INDEX OF OBJECT
}
答案
您可以利用enumerated
以这种方式了解有价值的index
。
func zipArray() {
let words = ["one", "two", "three", "four"]
let numbers = 1...4
let zipArray = Array(zip(words, numbers))
print(zipArray)
for (index, tuple) in zipArray.enumerated() {
print("Index : \(index): Word :\(tuple.0) Number : \(tuple.1)")
}
}
一旦zip
在两个数组上执行,它就会返回另一个带有一对输入的数组。
所以你可以使用上面的代码对zipped数组执行enumerated
操作,并将index
和value
作为元组。然后对于元组索引的单个元素将是相同的。
可能有更好的方法。但这将满足您的索引目的。
另一答案
拉链数组后,它只有一个索引。只需将其用作普通枚举即可。
let arr1 = ["1","2","3"]
let arr2 = ["A","B"]
let arr3 = zip(arr1, arr2)
print(arr3)
for (index, (x,y)) in arr3.enumerated() {
print(index, y)
}
请享用!
以上是关于如何枚举swift 4中的zip数组以获取每个对象的索引的主要内容,如果未能解决你的问题,请参考以下文章
Swift - GCD 可变数组多线程发出“在枚举时发生突变”