在使用Rust编程时,我发现可以通过引用循环遍历Vec
和HashMap
(以及可能的其他数据结构),而不是使用.iter()
方法。
let xs = vec![1, 2, 3, 4, 5];
for x in &xs {
println!("x == {}", x);
}
.iter()
函数似乎具有相同的行为。let xs = vec![1, 2, 3, 4, 5];
for x in xs.iter() {
println!("x == {}", x);
}
这两种循环集合的方法在功能上是相同的,但它们之间存在微妙的差别吗?我注意到在我找到的示例中,使用
.iter()
似乎是普遍优先的方法。