map в Go - хеш-таблица: среднее O(1) для вставки, удаления, поиска. Итерация в случайном порядке. Ключи должны быть сравниваемыми; не слайсы и не мапы. При росте мапа переаллоцируется. Проверка наличия: v, ok := m[key]. Для конкурентного доступа нужна синхронизация (mutex или sync.Map для специфичных паттернов).
m := make(map[string]int)
m["a"] = 1
if v, ok := m["b"]; ok { ... }