Vector 如何将两个锈迹向量交错到一个新向量中?

Vector 如何将两个锈迹向量交错到一个新向量中?,vector,rust,iterator,traits,itertools,Vector,Rust,Iterator,Traits,Itertools,我需要一种惯用的方式来交错这两个向量: v1 = vec![1.0, 2.0, 3.0]; v2 = vec![4.0, 5.0, 6.0]; 我期望的结果是: v3 is [1.0, 4.0, 2.0, 5.0, 3.0, 6.0]; 我尝试使用itertool的interlace函数,但无法让迭代器收集到Vec类型。很可能我用错了。使用板条箱中的函数或方法: 使用itertools::{interleave,itertools}; fn main(){ 设v1=vec![1.0,2.0,

我需要一种惯用的方式来交错这两个向量:

v1 = vec![1.0, 2.0, 3.0];
v2 = vec![4.0, 5.0, 6.0];
我期望的结果是:

v3 is [1.0, 4.0, 2.0, 5.0, 3.0, 6.0];
我尝试使用itertool的
interlace
函数,但无法让迭代器收集到
Vec
类型。很可能我用错了。

使用板条箱中的函数或方法:

使用itertools::{interleave,itertools};
fn main(){
设v1=vec![1.0,2.0,3.0];
设v2=vec![4.0,5.0,6.0];
设v=interleave(v1,v2);
dbg!(v);
设v1=vec![1.0,2.0,3.0];
设v2=vec![4.0,5.0,6.0];
设v=v1
.into_iter()
.interleave(v2.into_iter())
收集::();
dbg!(v);
}

使用std iter:@ÖmerErden,很快,当数组实现
IntoIter
时,你就不需要奇怪的
链接了:)@FrenchBoiethios我希望tuples已经实现
IntoIter
了,在那之前,让我们坚持这个
。平面图(|(x,y)| vec![x,y])
:完成了,谢谢Omer!