何时对 Swift 中的数组使用枚举?
When to use enumerate for arrays in Swift?
我注意到当您尝试在循环中删除或改变数组项时会发生奇怪的事情。但是,在数组上调用 enumerate()
时,它会按预期工作。它背后的概念是什么,我们什么时候应该使用enumerate()
?
要回答标题中的问题,当除了值本身之外还需要值的索引时,您可以使用 enumerate()
:
If you need the integer index of each item as well as its value, use the enumerate()
method to iterate over the array instead.
for (index, value) in shoppingList.enumerate() {
print("Item \(index + 1): \(value)")
}
enumerate()
提供了一种在遍历数组元素时修改数组元素的安全模式:
for (index, (var value)) in shoppingList.enumerate() {
if value == "something" {
shoppingList[index] = "something-else"
}
}
我注意到当您尝试在循环中删除或改变数组项时会发生奇怪的事情。但是,在数组上调用 enumerate()
时,它会按预期工作。它背后的概念是什么,我们什么时候应该使用enumerate()
?
要回答标题中的问题,当除了值本身之外还需要值的索引时,您可以使用 enumerate()
:
If you need the integer index of each item as well as its value, use the
enumerate()
method to iterate over the array instead.for (index, value) in shoppingList.enumerate() { print("Item \(index + 1): \(value)") }
enumerate()
提供了一种在遍历数组元素时修改数组元素的安全模式:
for (index, (var value)) in shoppingList.enumerate() {
if value == "something" {
shoppingList[index] = "something-else"
}
}