Sobes.tech
Junior — Middle

Каким образом обрабатывать ситуации, когда Map еще не была инициализирована?

sobes.tech AI

Risposta dell'AI

In Go, prima di usare una map, è necessario inizializzarla, altrimenti un tentativo di scrittura provocherà un panic (runtime panic). Per gestire la situazione in cui la map non è ancora inizializzata (cioè, è nil), si può:

  • Verificare se la map è inizializzata prima di usarla:
var m map[string]int
if m == nil {
    m = make(map[string]int)
}
 m["key"] = 42
  • Oppure inizializzare la map direttamente alla dichiarazione:
m := make(map[string]int)
 m["key"] = 42

In questo modo, bisogna sempre assicurarsi che la map non sia nil prima di scriverci.