Back to questions
Senior
1
Можем ли мы добавить элемент в nil map так же, как в nil-слайс?
Companies where asked
Магнум
Answer from AI
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 и инициализирована.