Senior
Jaké datové typy lze použít jako klíč pro mapu? Lze použít pole jako klíč?
sobes.tech AI
Odpověď od AI
V Go může být klíčem pro mapu jakýkoli typ, který podporuje operaci porovnání == a !=. To znamená, že klíče mohou být základní typy (int, string, bool atd.), ukazatele, struktury, pokud jsou všechny jejich pole porovnatelné, a také rozhraní, pokud je dynamický typ porovnatelné.
Pole v Go jsou porovnatelné, pokud jsou jejich prvky porovnatelné, takže pole mohou být použity jako klíče v mapě. Například:
m := make(map[[3]int]string)
m[[3]int{1, 2, 3}] = "hodnota"
Nicméně, slices (řezy) nelze použít jako klíče, protože nejsou porovnatelné (kromě porovnání s nil).