Sobes.tech
Junior

Ko pārstāv datu tips string Golang valodā?

sobes.tech AI

Atbilde no AI

Golang valodā string ir nemainīga baitu secība.

Galvenās īpašības:

  • Nemainīgums: Pēc virknes izveides, to nevar mainīt. Jebkura darbība, kas maina virkni, patiesībā izveido jaunu virkni.
  • Attēlojums: Virkne satur baitu secību. Noklusējuma uzskatā, Golang pieņem, ka šie baiti attēlo UTF-8 kodētu tekstu.
  • Garums: Virknes garums (len(s)) atgriež baitu skaitu virknes iekšienē, nevis rune (simbolu) skaitu.
  • Indeksācija: Pieeja virknes elementiem ar indeksu (s[i]) atgriež šo indeksu esošo baitu.
  • Runas: Darbā ar simboliem (runām), tiek izmantota iterācija pār virkni ar for range ciklu, kas dekodē UTF-8 un nodrošina runas un to indeksus.

Piemērs:

// Virknes inicializācija
s := "Привет, мир!" // 23 baiti, 12 runas

// Virknes garums (baitos)
byteLength := len(s) // 23

// Pieeja baitam ar indeksu
firstByte := s[0] // firstByte = 208 (baits 'П' UTF-8)

// Iterācija pār runām
runeCount := 0
for index, runeValue := range s {
	// index - runas sākuma indekss (baitos)
	// runeValue - dekodēta runa
	runeCount++
}
// runeCount = 12