Sobes.tech
Назад к вопросам
Junior — Middle
75

Какие типы ключей допускаются для использования в структуре данных Map?

Ответ от нейросети

sobes.tech AI

В Go ключи для структуры данных map должны быть сравнимыми (comparable) типами, то есть такими, которые можно использовать в операциях сравнения == и !=.

Допустимые типы ключей включают:

  • Примитивные типы: int, float64, string, bool и т.д.
  • Указатели
  • Структуры, если все их поля сравнимы
  • Массивы, если элементы массива сравнимы

Недопустимые типы ключей:

  • Срезы (slice)
  • Карты (map)
  • Функции

Пример использования карты с ключом типа string:

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

Если попытаться использовать срез как ключ, компилятор выдаст ошибку.