如何使用索引位置迭代Vec <T>?

bit*_*ner 12 iterator for-loop rust

我需要迭代一个Vec但我需要每个迭代元素的位置.我确定这已经在API中,但我看不到它.

我需要这样的东西:

fn main() {
    let v = vec![1; 10];
    for (pos, e) in v.iter() {
        // do something here
    }
}
Run Code Online (Sandbox Code Playgroud)

lum*_*max 16

您可以使用enumerate()函数:

fn main() {
    let v = vec![1; 10];
    for (pos, e) in v.iter().enumerate() {
        println!("Element at position {}: {:?}", pos, e);
    }
}
Run Code Online (Sandbox Code Playgroud)

围栏