Sobes.tech
Junior — Middle

De que componentes é composta uma string na linguagem Go?

sobes.tech IA

Resposta da IA

Na linguagem Go, uma string (string) representa uma sequência imutável de bytes, geralmente usada para armazenar texto codificado em UTF-8. Os componentes principais de uma string em Go:

  • Bytes — a própria sequência de bytes que armazena os dados.
  • Comprimento — o número de bytes na string.

Internamente, a string é implementada como uma estrutura com um ponteiro para um array de bytes e um comprimento. A string não contém um delimitador ou terminador explícito.

É importante entender que uma string não é um array de caracteres (runes), mas uma sequência de bytes. Para trabalhar com caracteres Unicode, usa-se o tipo rune e funções do pacote unicode/utf8.

Exemplo:

s := "Привет"
fmt.Println(len(s)) // Imprime o número de bytes, não de caracteres
runes := []rune(s)
fmt.Println(len(runes)) // Número de caracteres (runes)