Назад к вопросам
Senior
2
Можем ли мы добавить элемент в nil map так же, как в nil-слайс?
Компании, где спрашивали
Магнум
Ответ от нейросети
sobes.tech AI
В Go нельзя добавить элемент в nil map — это приведёт к панике во время выполнения.
Карта (map) должна быть инициализирована перед использованием, например с помощью make:
var m map[string]int // m == nil
m["key"] = 1 // panic: assignment to entry in nil map
m = make(map[string]int)
m["key"] = 1 // работает корректно
В отличие от слайсов, к которым можно применять append даже если они nil (в этом случае создаётся новый слайс), карты требуют явной инициализации.
Поэтому перед добавлением элементов в map всегда нужно убедиться, что она не nil и инициализирована.