Sobes.tech
Senior

¿Podemos agregar un elemento a un mapa nil de la misma manera que a un slice nil?

sobes.tech AI

Respuesta de la IA

В 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 и инициализирована.