Sobes.tech
Junior — Middle

Qual valor a função len retorna ao ser aplicada a um tipo de dado string?

sobes.tech IA

Resposta da IA

Na linguagem Go, a função len aplicada a uma string devolve o número de bytes nessa string, não o número de caracteres (runes). Isto deve-se ao fato de que as strings em Go são armazenadas no formato UTF-8, onde um caractere pode ocupar vários bytes.

Exemplo:

s := "Привет"
fmt.Println(len(s)) // Vai mostrar o número de bytes, por exemplo 12

Se precisar obter o número de caracteres (runes), deve converter a string para um slice de runes:

fmt.Println(len([]rune(s))) // Vai mostrar o número de caracteres, por exemplo 6