Sobes.tech
Junior — Middle

Објасните концепт типа стринг у језику Go и његове главне особине.

sobes.tech АИ

Одговор од АИ

U jeziku Go, tip string predstavlja nemijenjivi niz bajtova, koji se obično koristi za skladištenje teksta u kodiranju UTF-8.

Glavne osobine stringova u Go:

  • Nemijenjivost: Nakon kreiranja, string se ne može mijenjati. Operacije koje mijenjaju string stvaraju novi.
  • UTF-8 kodiranje: Stringovi se čuvaju u UTF-8, što omogućava rad sa višejezičnim tekstom.
  • Pristup po bajtovima: Indeksiranje stringa vraća bajt, a ne znak (rune). Za rad sa znakovima koristi se tip rune.
  • Podrška za seče: Mogu se dobiti podstringovi pomoću seča, na primjer s[0:5].

Primjer rada sa stringovima i runama:

s := "Привет"
fmt.Println(len(s)) // broj bajtova
for i, r := range s {
    fmt.Printf("%d: %c\n", i, r) // ispisuje indeks bajta i znak
}

Dakle, stringovi u Go su zgodan i efikasan način za rad sa tekstom, ali je važno razumjeti razliku između bajtova i znakova.