Rust:
Concatenando strings
Como Fazer:
fn main() {
// Usando o operador `+`
let saudacao = "Olá".to_string();
let mundo = " mundo!";
let frase = saudacao + mundo;
println!("{}", frase); // Output: Olá mundo!
// Usando o método `format!`
let nome = "Rust";
let versao = "1.63";
let frase_formatada = format!("Bem-vindo ao {} versão {}!", nome, versao);
println!("{}", frase_formatada); // Output: Bem-vindo ao Rust versão 1.63!
// Concatenando várias strings com o método `push_str`
let mut mensagem = String::new();
mensagem.push_str("Juntando");
mensagem.push_str(" pedaços");
mensagem.push_str(" de texto.");
println!("{}", mensagem); // Output: Juntando pedaços de texto.
}
Aprofundamento
Concatenar strings é essencial e não é nada novo. Em linguagens clássicas como C, era comum usar funções como strcat
para isso, mas Rust moderniza o processo com segurança de tipo e de memória. Outras maneiras de concatenar strings incluem usar o método join
da trait Iterator
se você tiver uma coleção de strings. Quando se trata de desempenho, format!
pode ser menos eficiente que outras técnicas, pois cria uma nova String a cada chamada, enquanto métodos como push_str
e +
modificam a String existente. Internamente, Rust gerencia o layout da string na memória usando um Vec<u8>
para armazenar os dados.
Veja Também
- A documentação oficial do Rust sobre o tipo
String
. - O
book
do Rust, com um capítulo sobre strings. - Uma exploração detalhada do módulo std::str, que lida com strings de fatia, ou ‘slice’ strings, que são vistas frequentes no código Rust.