如何在 Rust 中通过索引获取字符串字符?字符串索引
大家好!我刚开始学习 Rust,遇到了一个让我很困惑的问题。我习惯了其他编程语言,比如 Python 或 C++,可以直接写 `my_string[0]` 来获取第一个字符。在 Rust 中我尝试了同样的操作,但编译器报错了。
这是我的代码:
```rust
fn main() {
let hello = String::from("Привет");
let first_char = hello[0]; // 错误!
println!("第一个字符: {}", first_char);
}
```
编译器提示类似 `the trait bound 'String: Index<{integer}>' is not satisfied`。老实说,我不明白为什么字符串不能像普通数组一样被索引。毕竟字符串是一系列字符,对吧?我尝试搜索过,但英文 Stack Overflow 上的回答对新手来说太难了。
能否用简单的话解释:
1. 为什么在 Rust 中不能直接通过索引访问字符串字符?
2. 如何正确获取单个字符或子字符串?
3. 什么是 `chars