在查看 Rust 0.12 的文档时,我发现可以通过下面的方法将多个值推入到已经存在的Vec中: fn push_all(&mut self, other: &[T]) 然而,如果我有一个迭代器,我认为使用 vector.push_all(it.collect().as_ref()) 不是很高效。是否有更高效的方法?
您可以使用Vec的extend方法。 extend接受任何实现IntoIterator(包括所有迭代器类型)的类型的值,并通过从迭代器返回的所有元素扩展Vec:vector.extend(it) 由于extend属于Extend特质,因此它也适用于许多其他集合类型。