Sobes.tech
Junior — Middle

Jakie rodzaje kluczy są możliwe do użycia w strukturze danych Map?

sobes.tech AI

Odpowiedź od AI

W Go klucze dla struktury danych map mogą być dowolnych typów obsługujących operację porównania równości (== i !=). Oznacza to, że kluczami mogą być:

  • Wartości logiczne (bool)
  • Typy liczbowe (int, float64 itd.)
  • Ciągi znaków (string)
  • Wskaźniki
  • Struktury, jeśli wszystkie ich pola są porównywalne

Nie można używać jako kluczy wycinków (slice), map (map) czy funkcji, ponieważ nie obsługują porównania.

Przykład użycia mapy z kluczem typu string:

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

Jeśli chcesz używać złożonych kluczy, możesz zdefiniować strukturę z polami porównywalnymi.