Junior — Middle
O que acontece quando se realiza uma iteração sobre elementos de string na programação?
sobes.tech IA
Resposta da IA
No Go, ao iterar sobre uma string usando o ciclo for range, percorre-se por pontos de código Unicode (runas), e não por bytes. Isso significa que cada elemento do ciclo é um caractere Unicode, que pode ocupar vários bytes em UTF-8.
Por exemplo:
s := "Привет"
for i, r := range s {
fmt.Printf("Índice: %d, Runa: %c\n", i, r)
}
Aqui, i é o índice do primeiro byte da runa na string, e r é a própria runa (caractere).
Dessa forma, a iteração sobre uma string em Go permite trabalhar corretamente com caracteres multilíngues e não quebra caracteres multibyte em UTF-8.