Junior — Middle
Kādi datu tipi ir atļauti kā atslēgas kartes struktūrā?
sobes.tech AI
Atbilde no AI
Go valodā atslēgas kartē var būt tikai tie datu tipi, kas atbalsta salīdzināšanas operāciju (salīdzināmi). Tas nozīmē, ka atslēgas var būt:
- Loģiskās vērtības (bool)
- Skaitļi (int, float, complex utt.)
- Rindiņas (string)
- Norādītāji
- Interfeisi, ja dinamiskais tips atbalsta salīdzināšanu
- Struktūras, ja visi to lauki ir salīdzināmi
Nav atļauts izmantot sējumus, kartes, funkcijas un citas nesalīdzināmas tipus kā atslēgas, jo tie neatbalsta == operatoru.
Piemērs:
m := make(map[string]int)
m["key"] = 42
// Struktūra ar salīdzināmiem laukiem
type Point struct {
X, Y int
}
m2 := make(map[Point]string)
m2[Point{1,2}] = "Punkts"