Rust Vec<T> 集合使用教程

时间:2024-05-01 17:38:46

Rust Vec 集合使用教程

文章目录

  • Rust Vec 集合使用教程
    • 1. 创建和初始化 `Vec`
      • 代码示例
      • 运行结果
    • 2. 访问和修改 `Vec` 中的元素
      • 代码示例
      • 运行结果
    • 3. 添加和删除 `Vec` 中的元素
      • 代码示例
      • 运行结果
    • 4. 遍历 `Vec`
      • 代码示例
      • 运行结果
    • 5. 使用 `Vec` 的内置方法
      • 代码示例
      • 运行结果

本教程将介绍如何在 Rust 中使用 Vec<T> 集合。 Vec<T> 是一个动态数组,可以存储任意类型的元素。我们将通过以下小部分来学习如何使用 Vec<T>

  1. 创建和初始化 Vec<T>
  2. 访问和修改 Vec<T> 中的元素
  3. 添加和删除 Vec<T> 中的元素
  4. 遍历 Vec<T>
  5. 使用 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