Junior — Middle
Ce valoare returnează funcția len atunci când este aplicată unui tip de date de tip șir?
sobes.tech AI
Răspuns de la AI
În limbajul Go, funcția len aplicată unui șir de caractere returnează numărul de octeți din acest șir, nu numărul de caractere (rune). Acest lucru se datorează faptului că șirurile în Go sunt stocate în format UTF-8, unde un caracter poate ocupa mai mulți octeți.
Exemplu:
s := "Привет"
fmt.Println(len(s)) // Va afișa numărul de octeți, de exemplu 12
Dacă doriți să obțineți numărul de caractere (rune), trebuie să convertiți șirul într-un slice de rune:
fmt.Println(len([]rune(s))) // Va afișa numărul de caractere, de exemplu 6