Compartir tecnología

[Rust] Aprendizaje de tipo String String

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

¿Qué es la cuerda?

  • Solo hay un tipo de cadena en el lenguaje principal de Rust, y ese es el segmento de cadena.strgeneralmente considerado como&strprestado.
  • El tipo String se proporciona a través de la biblioteca estándar en lugar de codificarse directamente en el lenguaje principal. Es un tipo codificado en UTF-8, mutable y cultivable.
  • stryStringTodos están codificados en utf-8.

Crear nueva cadena

  • En realidad, la cadena se implementa envolviendo un vector de tipo bytes.
  • Cree una cadena usando el nuevo método:let mut s = String::new()
  • Cree una cadena usando el método to_string:
    let data = "initial contents";
    let s = data.to_string();
    let s = "initial contents".to_string();
    
    • 1
    • 2
    • 3
  • Crea una cadena usando el método String::from,let s = String::from("initial contents").

Cadena de actualización

Agregar cadena usando push_str y push

let mut s = String::from("foo");
s.push_str("bar");
// s is foobar
  • 1
  • 2
  • 3

push_strEl método no cambia la propiedad de la cadena.

let mut s = String::from("lo");
s.push('l');
// s is lol
  • 1
  • 2
  • 3

Utilice el operador + o la macro de formato para concatenar cadenas.

let s1 = String::from("Hello, ");
let s2 = String::from("world!");
let s3 = s1 + &s2; // note s1 has been moved here and can no longer be used
  • 1
  • 2
  • 3
let s1 = String::from("tic");
let s2 = String::from("tac");
let s3 = String::from("toe");

let s = format!("{s1}-{s2}-{s3}");
  • 1
  • 2
  • 3
  • 4
  • 5

Rust no permite subíndices para acceder a caracteres individuales dentro de una cadena

Cómo iterar sobre una cadena

  • Se puede acceder a caracteres UniCode individuales mediante el método chars. Utilice el método de bytes para acceder a cada byte.
for c in "Зд".chars() {
    println!("{c}");
}
  • 1
  • 2
  • 3