Sobes.tech
Junior — Middle

Koje karakteristične osobine treba da imaju ključevi u strukturi podataka map?

sobes.tech АИ

Одговор од АИ

U Go, ključevi u mapi moraju biti tipovi koji se mogu porediti (comparable), tj. tipovi koji se mogu koristiti sa operatorima poređenja == i !=. Ovo je neophodno da bi mapa efikasno tražila i poređivala ključeve.

Tipovi koji se mogu koristiti kao ključevi:

  • Jednostavni tipovi: stringovi, brojevi, boolean vrednosti.
  • Pokazivači.
  • Strukture, ako su sva njihova polja porediva.

Tipovi koji se ne mogu koristiti kao ključevi:

  • Slojevi (slice), mape (map), funkcije (func), jer nisu poredivi.

Primer:

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

Ovde je ključ string, što je ispravno.