Sobes.tech
Junior — Middle

Explique el concepto de tipo de cadena en el lenguaje Go y sus características principales.

sobes.tech AI

Respuesta de la IA

En el lenguaje Go, el tipo de cadena (string) representa una secuencia inmutable de bytes, generalmente utilizada para almacenar texto en codificación UTF-8.

Características principales de las cadenas en Go:

  • Inmutabilidad: Después de crear una cadena, no puede ser modificada. Cualquier operación que modifique la cadena crea una nueva.
  • Codificación UTF-8: Las cadenas se almacenan en UTF-8, lo que permite trabajar con texto multilingüe.
  • Acceso por bytes: La indexación de una cadena devuelve un byte, no un carácter (rune). Para trabajar con caracteres, se usa el tipo rune.
  • Soporte para rebanadas: Se pueden obtener subcadenas usando rebanadas, por ejemplo s[0:5].

Ejemplo de trabajo con cadenas y runas:

s := "Привет"
fmt.Println(len(s)) // número de bytes
for i, r := range s {
    fmt.Printf("%d: %c\n", i, r) // muestra el índice del byte y el carácter
}

Por lo tanto, las cadenas en Go son una forma conveniente y eficiente de trabajar con texto, pero requieren entender la diferencia entre bytes y caracteres.