Junior — Middle
Kokius rezultatus gauname eilės tvarka pereidami simbolius eilutės?
sobes.tech AI
Atsakymas iš AI
Sekvencinis eilutės simbolių perėjimas Go (Golang) dažnai atliekamas naudojant for range ciklą, kuris iteruoja per Unicode kodų taškus — runas (runes).
Toks perėjimas leidžia gauti kiekvieną eilutės simbolį kaip rune tipo reikšmę ir jo poziciją (indeksą baitais).
Pavyzdys:
package main
import (
"fmt"
)
func main() {
s := "Привет"
for i, r := range s {
fmt.Printf("Indeksas: %d, Simbolis: %c\n", i, r)
}
}
Išvestis apims indeksą (baitais) ir atitinkamą simbolį. Tai svarbu, nes UTF-8 simboliai gali užimti skirtingą baitų kiekį.
Šiuo būdu sekvencinis perėjimas leidžia teisingai dirbti su Unicode eilutėmis, gaunant kiekvieną simbolį kaip visumą, o ne tik atskirus baitus.