Junior — Middle
Функсияи len дар вақте ки ба навъи маълумоти сатрӣ татбиқ карда мешавад, кадом арзишро бармегардонад?
sobes.tech AI
Ҷавоб аз AI
Дар забони Go, функсияи len вақте ки ба сатр татбиқ карда мешавад, шумораи байтҳоро дар он сатр бармегардонад, на шумораи рамзҳо (runes). Ин ба он вобаста аст, ки сатрҳо дар Go дар формати UTF-8 нигоҳ дошта мешаванд, ки дар он як рамз метавонад чанд байтро ишғол кунад.
Масалан:
s := "Привет"
fmt.Println(len(s)) // Нишон медиҳад шумораи байтҳо, масалан 12
Агар шумо хоҳед, ки шумораи рамзҳо (runes) -ро гиред, бояд сатрро ба слайс аз rune-ҳо табдил диҳед:
fmt.Println(len([]rune(s))) // Нишон медиҳад шумораи рамзҳо, масалан 6