For-in 循环
手动编写 for 循环并决定结束条件较为繁琐。
若需遍历集合,可使用 for .. in ... {}
循环。
第一个 for-in 循环遍历数组,每次迭代会将元素绑定至变量 element
。
第二个循环遍历键值对映射(Map),将键绑定至第一个变量 (k
),值绑定至第二个变量 (v
)。
哪些集合支持 for-in 循环?何时支持双变量遍历?这取决于集合的 API 设计:
- 若集合提供
iter()
方法返回Iter[V]
迭代器,则支持单变量遍历 - 若集合提供
iter2()
方法返回Iter2[K,V]
迭代器,则支持双变量遍历
我们将在后续章节详解迭代器机制。
fn main {
println("for-in loop:")
let array = [1, 2, 3]
for element in array {
println("element: \{element}")
}
println("for-in loop with index:")
for i, element in array {
println("index: \{i}, element: \{element}")
}
println("for-in loop for map:")
let map = { "key1": 1, "key2": 2, "key3": 3 }
for k, v in map {
println("key: \{k}, value: \{v}")
}
}