Sobes.tech
Junior — Middle

Quais resultados obtêm-se ao percorrer sequencialmente os caracteres de uma string?

sobes.tech IA

Resposta da IA

Ao percorrer sequencialmente os caracteres de uma string em Go (Golang), normalmente utiliza-se um ciclo for range, que itera sobre as runas (runes), que são pontos de código Unicode.

O resultado dessa iteração é obter cada caractere da string como um valor do tipo rune e sua posição (índice em bytes).

Exemplo:

package main
import (
    "fmt"
)

func main() {
    s := "Привет"
    for i, r := range s {
        fmt.Printf("Índice: %d, Caractere: %c\n", i, r)
    }
}

A saída conterá o índice (em bytes) e o caractere correspondente. Isso é importante, pois em UTF-8, os caracteres podem ocupar diferentes quantidades de bytes.

Assim, a iteração sequencial permite trabalhar corretamente com strings Unicode, obtendo cada caractere completo, e não apenas bytes individuais.