Sobes.tech
Junior — Middle

Xəritə strukturu üçün açar kimi hansı məlumat növlərinə icazə verilir?

sobes.tech Süni İntellekt

AI-dan cavab

Go-da, xəritənin açarları yalnız müqayisə əməliyyatını (qarşılaşdırıla bilən) dəstəkləyən məlumat tipləri ola bilər. Bu, açarların aşağıdakılar ola biləcəyi anlamına gəlir:

  • Boolean dəyərlər (bool)
  • Rəqəmlər (int, float, complex və s.)
  • Sətirlər (string)
  • Göstəricilər
  • İnterfeyslər, əgər dinamik tip müqayisəni dəstəkləyirsə
  • Struktur, əgər onların bütün sahələri müqayisə edilə bilən olarsa

Dilimlər, xəritələr, funksiyalar və digər müqayisə edilə bilməyən tiplər açar kimi istifadə edilə bilməz, çünki onlar == operatorunu dəstəkləmir.

Nümunə:

m := make(map[string]int)
m["key"] = 42

// Müqayisə edilə bilən sahələrə malik struktur
type Point struct {
    X, Y int
}

m2 := make(map[Point]string)
m2[Point{1,2}] = "Bir nöqtə"