Swift中的倒序遍历注意点
2016-10-31 本文已影响762人
susnm
在Swift中的标准库中有方法
-
public func enumerated() -> EnumeratedSequence<Array<Element>>
:可以用来快速的枚举数组中的内容,并用元组(index, value)接收 -
public func reversed() -> ReversedRandomAccessCollection<Array<Element>>
:可以倒叙数组内容
但是当两者结合使用,并需要用到索引时需要注意
let array = ["hello", "welcome"]
for i in array.enumerated().reversed() {
print(i)
// (1, "welcome")
// (0, "hello")
}
for i in array.reversed().enumerated() {
print(i)
// (0, "welcome")
// (1, "hello")
}
可以看到,两种写法index
对应的value
是不一样的。如果先enumerated()
数组,那么reversed ()
会带索引一起倒叙。