在 Rust 中,集合和字符串是常见的数据类型,标准库中提供了丰富的集合和字符串处理功能。

字符串 (String) 和字符串切片 (&str):
fn main() {
    // 创建一个 String
    let mut s1 = String::from("Hello, ");

    // 追加字符串
    s1.push_str("Rust!");

    // 创建一个字符串切片
    let s2 = " Welcome to the world of";

    // 连接两个字符串
    let result = s1 + s2;

    println!("{}", result);
}

在这个例子中,String 是一个可变的、可拓展的字符串类型,而字符串切片 &str 是一个不可变的字符串引用。使用 push_str 方法和 + 运算符可以进行字符串拼接。

向量 (Vec):
fn main() {
    // 创建一个包含整数的向量
    let mut vec1 = vec![1, 2, 3];

    // 在向量末尾添加元素
    vec1.push(4);

    // 创建一个包含字符串的向量
    let vec2 = vec!["Rust", "is", "awesome"];

    // 访问向量元素
    println!("Element at index 2: {}", vec2[2]);
}

向量是一个可变大小的数组,可以通过 vec! 宏创建。使用 push 方法可以在向量末尾添加元素,通过索引访问元素。

哈希映射 (HashMap):
use std::collections::HashMap;

fn main() {
    // 创建一个哈希映射
    let mut scores = HashMap::new();

    // 插入键值对
    scores.insert(String::from("Alice"), 100);
    scores.insert(String::from("Bob"), 85);
    scores.insert(String::from("Charlie"), 90);

    // 获取值
    if let Some(score) = scores.get("Alice") {
        println!("Alice's score: {}", score);
    }

    // 遍历哈希映射
    for (name, score) in &scores {
        println!("{} has a score of {}", name, score);
    }
}

哈希映射是一种通过键值对存储数据的集合类型。在这个例子中,HashMap 存储了姓名和对应的分数。

这些是 Rust 中常见的集合和字符串的基本用法。标准库还提供了其他集合类型,如数组、栈、队列等,以及丰富的集合和字符串处理方法,供开发者使用。


转载请注明出处:http://www.zyzy.cn/article/detail/13732/Rust