MST

星途 面试题库

面试题:Rust中字符串与字符的基本操作

在Rust中,如何将一个字符串切片 `&str` 转换为拥有所有权的 `String` 类型?并且,如果已知一个 `String` 类型的字符串,如何获取它的第一个字符?
23.7万 热度难度
编程语言Rust

知识考点

AI 面试

面试题答案

一键面试
  1. &str 转换为 String: 可以使用 to_string 方法或者 String::from 函数。示例代码如下:
    fn main() {
        let s1: &str = "hello";
        // 使用 to_string 方法
        let s2 = s1.to_string();
        // 使用 String::from 函数
        let s3 = String::from(s1);
        println!("s2: {}, s3: {}", s2, s3);
    }
    
  2. 获取 String 类型字符串的第一个字符: 可以通过索引 chars 方法返回的迭代器来获取第一个字符。示例代码如下:
    fn main() {
        let s = String::from("world");
        if let Some(c) = s.chars().next() {
            println!("The first character is: {}", c);
        }
    }
    
    注意,不能直接使用 s[0] 这种方式获取字符,因为 String 内部存储的是字节,而不是字符,String 不支持通过索引直接访问字符。