Ответ
В Go map удобен для хранения пар ключ-значение с быстрым доступом. Например, подсчёт частоты слов в тексте:
text := "hello world hello"
words := strings.Fields(text)
freq := make(map[string]int)
for _, word := range words {
freq[word]++ // Увеличиваем счётчик для каждого слова
}
fmt.Println(freq) // map[hello:2 world:1]
Основные случаи использования:
- Кэширование данных
- Группировка элементов (например, по категориям)
- Быстрый поиск (O(1) в среднем случае)
- Замена switch-case для динамических условий
Важно: maps в Go неупорядочены и небезопасны для конкурентного доступа (нужен sync.Mutex или sync.Map).
Видео-ответы
▶
▶
▶
▶