Sobes.tech
Junior — Middle

Quali risultati si ottengono attraversando sequenzialmente i caratteri di una stringa?

sobes.tech AI

Risposta dell'AI

Durante l'iterazione sequenziale dei caratteri di una stringa in Go (Golang), si utilizza generalmente un ciclo for range, che itera sulle rune — i punti di codice Unicode.

Il risultato di questa iterazione è ottenere ogni carattere della stringa come valore di tipo rune e la sua posizione (indice in byte).

Esempio:

package main
import (
    "fmt"
)

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

L'output conterrà l'indice (in byte) e il carattere corrispondente. Questo è importante, poiché in UTF-8 i caratteri possono occupare un numero variabile di byte.

In questo modo, l'iterazione sequenziale permette di lavorare correttamente con le stringhe Unicode, ottenendo ogni carattere nel suo insieme, e non solo singoli byte.