如何使用索引位置压缩 Vec<T>

How to zip Vec<T> with indexed position

根据我的问题 ,现在我需要压缩两个动态向量及其索引位置。

fn main() {
    let a = vec![1; 10];
    let b = vec![2; 10];

    for ((i,x),(j,y)) in a.iter().enumerate().zip(b.iter().enumerate()) {
        println!("(({},{}),({},{}))", i, x, j, y);
    }
}

enumerate 函数适用于所有迭代器。在两个迭代器 ab 上使用 zip 会产生另一个迭代器。因此,您还可以在生成的迭代器上调用 enumerate

fn main() {
    let a = vec![1; 10];
    let b = vec![2; 10];

    let it = a.iter().zip(b.iter());

    for (i, (x, y)) in it.enumerate() {
        println!("{}: ({}, {})", i, x, y);
    }
}