Vec 定义了一个动态增长的数组,与java ArrayList类似。基本也定义了增删改查操作:
pub fn push(&mut self, value: T)
pub fn remove(&mut self, index: usize)
pub fn get<I>(&self, index: I)
通过例子可以比较轻松掌握基本用法:
-
pub fn my_vec(){
-
let mut stack = Vec::new();
-
stack.push(1);
-
stack.push(2);
-
stack.push(3);
-
println!("stack已初始化:{}", stack.to_json());
-
//删除第0个元素
-
stack.remove(0);
-
println!("已删除第0个元素");
-
//再获取该元素
-
let item0 = stack.get(0);
-
let is_exist = item0.is_some();
-
println!("item0 存在?{}", is_exist);
-
-
}
运行一下:
补充:除了上述初始化一个vector的方法Vec::new()之外也可以用宏来初始化,比如
let stack = vec![1, 2, 3];