有没有一个函数可以用来迭代数组,同时包含索引和元素,比如Python的enumerate

for index, element in enumerate(list):
    ...

推荐答案

对从Swift 3.0开始,如果需要每个元素的索引及其值,可以使用enumerated() method来迭代array.它返回由索引和数组中每个项的值组成的成对序列.例如:

for (index, element) in list.enumerated() {
  print("Item \(index): \(element)")
}

在Swift 3.0之前和Swift 2.0之后,该函数被称为enumerate():

for (index, element) in list.enumerate() {
    print("Item \(index): \(element)")
}

在Swift 2.0之前,enumerate是一个全球性的功能.

for (index, element) in enumerate(list) {
    println("Item \(index): \(element)")
}

Swift相关问答推荐

从后台线程获取@发布属性的值(不更改它)是正确的吗?

如何写一个;风格;视图修饰符,它会影响特定类型的所有嵌套视图?

为什么这段Swift读写锁代码会导致死锁?

在Equatable上引用运算符函数==要求Dictionary.Values符合Equatable

如何将变量添加到不属于可解码部分的 struct ?

如何使用 Swinject 注册符合 ObservableObject 的协议?

如何确定扩展中的具体类型?

类型 '()' 不能符合 View (除非它肯定是 View,这次没有恶作剧)

使用 Swiftui 水平修剪 Shape()

在 Swift 中返回实例类型

获取设备图像比例(例如@1x、@2x 和@3x)

Swift 3:日期与 NSDate?

如何在Swift中找出字母是字母数字还是数字

Swift - 迭代 struct 对象时如何对其进行变异

在 Swift 中以编程方式更新约束的常量属性?

如何在 Swift 中使用 Crashlytics 登录?

UIButton 标题左对齐问题 (iOS/Swift)

如何在 SwiftUI Segmented Picker 中更改选定的段 colored颜色

显示 UIAlertController 的简单 App Delegate 方法(在 Swift 中)

Swift performSegueWithIdentifier 不起作用