Junior — Middle
Qator ustida chaqirilganda length metodi qanday qiymat qaytaradi?
sobes.tech AI
AIdan javob
Go tilida, len metodi satrda chaqirilganda, satrning baytlar sonini qaytaradi, belgilarning sonini emas. Bu, Go'dagi satrlar UTF-8 kodlashida baytlar ketma-ketligi bo‘lishi bilan bog‘liq. Agar satr faqat ASCII belgilardan iborat bo‘lsa, baytlar soni belgilarning soniga mos keladi. Ammo ko‘p tilli belgilarda, har biri bir nechta baytni egallashi mumkin.
Misol:
package main
import (
"fmt"
)
func main() {
s := "Привет"
fmt.Println(len(s)) // Baytlar sonini chiqaradi, masalan 12
}
Belgilarning (rune) sonini hisoblash uchun, unicode/utf8 paketidan utf8.RuneCountInString funksiyasidan foydalanish kerak.