Junior — Middle
Kādu vērtību atgriež funkcija len, ja tā tiek piemērota virknes datu tipam?
sobes.tech AI
Atbilde no AI
Go valodā, funkcija len, ja tā tiek piemērota virknei, atgriež šīs virknes baitu skaitu, nevis rakstzīmju (rune) skaitu. Tas ir tāpēc, ka virknes Go tiek glabātas UTF-8 formātā, kur viena rakstzīme var aizņemt vairākus baitus.
Piemērs:
s := "Привет"
fmt.Println(len(s)) // Parādīs baitu skaitu, piemēram, 12
Ja vēlaties iegūt rakstzīmju (rune) skaitu, jums jāveic virknes pārveidošana par rune masīvu:
fmt.Println(len([]rune(s))) // Parādīs rakstzīmju skaitu, piemēram, 6