for循环

for循环可以遍历任何提供了iterator的对象,语法如下:

for (item in collection) print(item)

也可以是代码块。

for (item: Int in ints) {
    // ...
}

使用for循环遍历需要满足三个条件:

  • 有一个成员函数iterator()
  • iterator有一个next()函数
  • hasNext()函数返回布尔类型代表是否还有值可以进行遍历。

以上的三个方法需要标记为operator。

在for循环中如果是基于数据索引进行遍历将不会创建iterator实例。

for (i in array.indices) {
    print(array[i])
}

注意,遍历通过一系列编译优化实现无需额外创建的对象。或者,您可以使用withIndex库函数:

for ((index, value) in array.withIndex()) {
    println("the element at $index is $value")
}

results matching ""

    No results matching ""