Sobes.tech
Junior — Middle

Jaké typy klíčů jsou povoleny pro použití ve struktuře dat Map?

sobes.tech AI

Odpověď od AI

V jazyce Go musí být klíče pro datovou strukturu map typu porovnatelné (comparable), tj. takové, které lze použít v operacích porovnání == a !=.

Povolené typy klíčů zahrnují:

  • Primitivní typy: int, float64, string, bool atd.
  • Ukazatele
  • Struktury, pokud jsou všechny jejich pole porovnatelné
  • Pole, pokud jsou prvky pole porovnatelné

Nepovolené typy klíčů:

  • Řezové (slice)
  • Mapy (map)
  • Funkce

Příklad použití mapy s klíčem typu string:

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

Pokud se pokusíte použít řez jako klíč, kompilátor vypíše chybu.