如何使用索引位置压缩 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
函数适用于所有迭代器。在两个迭代器 a
和 b
上使用 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);
}
}
根据我的问题
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
函数适用于所有迭代器。在两个迭代器 a
和 b
上使用 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);
}
}