Junior — Middle
Milyen eredményeket kapunk egy karakterlánc karaktereinek szekvenciális bejárásakor?
sobes.tech MI
Válasz az MI-től
A Go (Golang) nyelvben a karakterláncok szekvenciális bejárásakor általában a for range ciklust használják, amely a Unicode-kódpontokat, azaz a runékat (runes) iterálja.
Egy ilyen iteráció eredményeként minden karaktert a karakterláncban rune típusú értékként és annak pozícióját (indexet bájtokban) kapjuk meg.
Példa:
package main
import (
"fmt"
)
func main() {
s := "Привет"
for i, r := range s {
fmt.Printf("Index: %d, Karakter: %c\n", i, r)
}
}
A kimenet tartalmazza az indexet (bájtokban) és a megfelelő karaktert. Ez fontos, mivel UTF-8-ban a karakterek különböző számú bájtot foglalhatnak el.
Így a szekvenciális bejárás lehetővé teszi a Unicode-sztringek helyes kezelését, minden karaktert teljes egészében, nem csak az egyes bájtokat, hanem az egész karaktert is eléri.