Sobes.tech
Junior — Middle

Go dilində sətir tipi anlayışını və onun əsas xüsusiyyətlərini izah edin.

sobes.tech Süni İntellekt

AI-dan cavab

Go dilində, string tipi, ümumiyyətlə UTF-8 kodlamasında mətn saxlamaq üçün istifadə olunan dəyişməz bayt ardıcıllığını təmsil edir.

Go-da sətirlərin əsas xüsusiyyətləri:

  • Dəyişməzlik: Bir sətir yaradıldıqdan sonra dəyişdirilə bilməz. Sətiri dəyişən hər hansı əməliyyat yeni bir sətir yaradır.
  • UTF-8 kodlaması: Sətirlər UTF-8-də saxlanılır, bu da çoxdilli mətnlə işləməyə imkan verir.
  • Baytlar üzrə giriş: Sətirin indeksləşdirilməsi bir bayt qaytarır, simvol (rune) deyil. Simvollarla işləmək üçün rune tipi istifadə olunur.
  • Dilimlərə dəstək: Dilimlər vasitəsilə alt sətirlər əldə etmək mümkündür, məsələn s[0:5].

Sətirlər və runlar ilə işləmək nümunəsi:

s := "Привет"
fmt.Println(len(s)) // baytların sayı
for i, r := range s {
    fmt.Printf("%d: %c\n", i, r) // bayt indeksini və simvolu göstərir
}

Beləliklə, Go-da sətirlər mətnlə işləmək üçün rahat və səmərəli üsuldur, lakin baytlar və simvollar arasındakı fərqi anlamaq vacibdir.