Rust Vec 集合使用教程
文章目录
本教程将介绍如何在 Rust 中使用
Vec<T> 集合。 
Vec<T> 是一个动态数组,可以存储任意类型的元素。我们将通过以下小部分来学习如何使用 
Vec<T>: 
 
- 创建和初始化 
Vec<T> - 访问和修改 
Vec<T>中的元素 - 添加和删除 
Vec<T>中的元素 - 遍历 
Vec<T> - 使用 
Vec<T>的内置方法 
1. 创建和初始化 Vec<T>
 
要创建一个空的 Vec<T>,可以使用 Vec::new() 方法。要创建一个包含初始元素的 Vec<T>,可以使用 vec! 宏。
代码示例
fn main() {
    let mut v1: Vec<i32> = Vec::new(); // 创建一个空的 Vec<i32>
    let v2: Vec<i32> = vec![1, 2, 3]; // 创建一个包含初始元素的 Vec<i32>
}
 
运行结果
无输出。
2. 访问和修改 Vec<T> 中的元素
 
要访问 Vec<T> 中的元素,可以使用索引操作符 []。要修改 Vec<T> 中的元素,可以使用索引操作符 [] 并赋值。
代码示例
fn main() {
    let mut v: Vec<i32> = vec![1, 2, 3];
    println!("v[0]: {}", v[0]); // 访问第一个元素
    v[1] = 4; // 修改第二个元素
    println!("v: {:?}", v); // 输出整个 Vec<i32>
}
 
运行结果
v[0]: 1
v: [1, 4, 3]
 
3. 添加和删除 Vec<T> 中的元素
 
要向 Vec<T> 添加元素,可以使用 push() 方法。要删除 Vec<T> 中的元素,可以使用 remove() 方法。
代码示例
fn main() {
    let mut v: Vec<i32> = vec![1, 2, 3];
    v.push(4); // 添加元素
    v.remove(1); // 删除第二个元素
    println!("v: {:?}", v); // 输出整个 Vec<i32>
}
 
运行结果
v: [1, 3]
 
4. 遍历 Vec<T>
 
要遍历 Vec<T>,可以使用 for 循环。
代码示例
fn main() {
    let v: Vec<i32> = vec![1, 2, 3];
    for i in &v {
        println!("{}", i); // 输出每个元素
    }
}
 
运行结果
1
2
3
 
5. 使用 Vec<T> 的内置方法
 
Vec<T> 提供了许多内置方法,如 len()、capacity()、is_empty()、contains() 等。
代码示例
fn main() {
    let v: Vec<i32> = vec![1, 2, 3];
    println!("len: {}", v.len()); // 输出长度
    println!("capacity: {}", v.capacity()); // 输出容量
    println!("is_empty: {}", v.is_empty()); // 判断是否为空
    println!("contains: {}", v.contains(&2)); // 判断是否包含某个元素
}
 
运行结果
len: 3
capacity: 3
is_empty: false
contains: true










