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

Какое отличие между использованием мап и слайса в Go, и в каких случаях предпочтительнее применять каждый из них?

Компании, где спрашивали
Ecom.tech
GsmSoft

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

sobes.tech AI

В Go map и slice служат для разных целей:

  • map — ассоциативный массив, структура для хранения пар ключ-значение с быстрым доступом по ключу. Ключи уникальны.
  • slice — динамический массив, упорядоченная коллекция элементов, доступ по индексу.

Когда использовать:

  • Используйте map, если нужно быстро находить элементы по уникальному ключу, например, хранить пользователей по ID.
  • Используйте slice, если важен порядок элементов, или нужно хранить набор элементов без ключей, например, список задач.

Пример:

// map для хранения оценок студентов по имени
grades := map[string]int{"Alice": 90, "Bob": 85}

// slice для хранения списка имен
names := []string{"Alice", "Bob", "Charlie"}

Выбор зависит от задачи: для поиска по ключу — map, для упорядоченного списка — slice.