Avatar ·

Como obter o primeiro caractere de uma string em Rust?

```html Olá a todos! Comecei a estudar Rust recentemente e me deparei com uma tarefa aparentemente simples: preciso obter o primeiro caractere de uma string. Em Python, eu escreveria `text[0]` e funcionaria. Mas em Rust, essa abordagem não funciona. Aqui está meu código: ```rust fn main() { let greeting = String::from("Привет, мир!"); let first_char = greeting[0]; println!("Primeiro caractere: {}", first_char); } ``` O compilador gera um erro: `the type 'String' cannot be indexed by 'usize'`. Eu entendo que strings em Rust não são simples arrays de caracteres, mas sequências de bytes codificadas em UTF-8. Mas como então obter o primeiro caractere? Na documentação está escrito sobre `.chars()` e `.bytes()`, mas estou confuso. Preciso exatamente da primeira representação de grafema (caractere), não do byte. Por exemplo, para a string "Привет ```