Sobes.tech
Junior — Middle

Aké typy údajov sú vhodné na použitie ako kľúče v štruktúre Map?

sobes.tech AI

Odpoveď od AI

V jazyku Go môžu byť kľúče v štruktúre map iba také typy, ktoré podporujú operáciu porovnania rovnosti (== a !=). To je dôležité, pretože na vyhľadanie hodnoty podľa kľúča je potrebné porovnávať kľúče.

Vhodné typy kľúčov:

  • Jednoduché typy: int, float64, string, bool atď.
  • Ukazovatele
  • Štruktúry, ak sú všetky ich polia porovnateľné
  • Polia, ak sú ich prvky porovnateľné

Nie je možné použiť ako kľúče:

  • Rezové pole (slice)
  • Mapy (map)
  • Funkcie

Príklad použitia:

m := make(map[string]int)
m["apple"] = 5
m["banana"] = 3

fmt.Println(m["apple"]) // 5

Ak sa pokúsite použiť rez ako kľúč, kompilátor vypíše chybu.