Junior — Middle
¿Qué sucede cuando se realiza una iteración sobre elementos de cadena en programación?
sobes.tech AI
Respuesta de la IA
En Go, al iterar sobre una cadena usando el ciclo for range, se recorre por puntos de código Unicode (runas), no por bytes. Esto significa que cada elemento del ciclo es un carácter Unicode, que puede ocupar varios bytes en UTF-8.
Por ejemplo:
s := "Привет"
for i, r := range s {
fmt.Printf("Índice: %d, Runa: %c\n", i, r)
}
Aquí, i es el índice del primer byte de la runa en la cadena, y r es la propia runa (carácter).
De esta forma, la iteración sobre una cadena en Go permite trabajar correctamente con caracteres multilingües y no rompe caracteres multibyte en UTF-8.