Middle
Wat is een iteratie over een string met for range in Go? Wat zijn de variabelen i en v binnen de lus, wat zijn hun datatypes?
sobes.tech AI
Antwoord van AI
In Go wordt de constructie for range gebruikt om over collecties te itereren, inclusief strings. Bij iteratie over een string met for i, v := range str:
iis de index van het huidige teken in de string, van het typeint.vis de waarde van het huidige teken, van het typerune(Unicode-codepunt).
Dit is belangrijk omdat in Go strings sequenties van bytes zijn, en range over een string precies de rune-tekens teruggeeft, die multibyte-tekens in UTF-8 correct afhandelen.
Voorbeeld:
str := "Привет"
for i, v := range str {
fmt.Printf("Index: %d, Teken: %c, Type: %T\n", i, v, v)
}
De uitvoer toont de byte-indices van het begin van elk teken en de tekens zelf als runes.