Junior — Middle
Jakie typy danych nadają się do użycia jako klucze w strukturze Map?
sobes.tech AI
Odpowiedź od AI
W języku Go klucze w strukturze map mogą być tylko typami obsługującymi operację porównania równości (== i !=). Wynika to z faktu, że do wyszukiwania wartości po kluczu konieczne jest porównanie kluczy.
Odpowiednie typy kluczy:
- Typy proste:
int,float64,string,boolitd. - Wskaźniki
- Struktury, jeśli wszystkie ich pola są porównywalne
- Tablice, jeśli elementy są porównywalne
Nie można używać jako kluczy:
- Sliców (
slice) - Map (
map) - Funkcji
Przykład użycia:
m := make(map[string]int)
m["apple"] = 5
m["banana"] = 3
fmt.Println(m["apple"]) // 5
Jeśli spróbujesz użyć slica jako klucza, kompilator zgłosi błąd.