在Rust中,VecDeque
是一个双端队列(double-ended queue),它可以存储任何实现了Copy
trait的类型。这意味着你可以将整数、浮点数、布尔值、字符等基本数据类型以及自定义类型(只要它们实现了Copy
trait)存储到VecDeque
中。
以下是一些可以存储在VecDeque
中的类型示例:
use std::collections::VecDeque; fn main() { let mut vec_deque: VecDeque= VecDeque::new(); vec_deque.push_back(1); vec_deque.push_front(0); vec_deque.push_back(2); vec_deque.push_front(-1); let mut vec_deque: VecDeque = VecDeque::new(); vec_deque.push_back(1.0); vec_deque.push_front(0.0); vec_deque.push_back(2.0); vec_deque.push_front(-1.0); let mut vec_deque: VecDeque = VecDeque::new(); vec_deque.push_back(true); vec_deque.push_front(false); let mut vec_deque: VecDeque = VecDeque::new(); vec_deque.push_back('a'); vec_deque.push_front('z'); }
请注意,如果自定义类型没有实现Copy
trait,那么就不能将其存储在VecDeque
中,因为VecDeque
需要在内部对其进行复制操作。在这种情况下,你可以考虑使用其他数据结构,如Vec
或LinkedList
。