Sobes.tech
Junior — Middle

Milyen kulcstípusok megengedettek a Map adatstruktúrában való használathoz?

sobes.tech MI

Válasz az MI-től

Go-ban a map adatszerkezet kulcsainak összehasonlítható (comparable) típusoknak kell lenniük, vagyis olyan típusoknak, amelyeket az == és != műveletekben lehet használni.

Engedélyezett kulcstípusok közé tartoznak:

  • Alapvető típusok: int, float64, string, bool stb.
  • Mutatók
  • Struktúrák, ha minden mezőjük összehasonlítható
  • Tömbök, ha a tömb elemei összehasonlíthatók

Nem megengedett kulcstípusok:

  • Szeletek (slice)
  • Térképek (map)
  • Függvények

Példa egy string típusú kulccsal rendelkező térkép használatára:

m := make(map[string]int)
m["apple"] = 5
fmt.Println(m["apple"]) // 5

Ha megpróbálsz egy szeletet kulcsként használni, a fordító hibát fog jelezni.