Sobes.tech
Junior — Middle

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

sobes.tech AI

Odpověď od AI

V jazyce Go je třeba před použitím map ji inicializovat, jinak pokus o zápis povede k panice (runtime panic). Aby bylo možné zvládnout situaci, kdy map ještě není inicializován (tedy je nil), lze:

  • Zkontrolovat, zda je map inicializován před použitím:
var m map[string]int
if m == nil {
    m = make(map[string]int)
}
 m["key"] = 42
  • Nebo inicializovat map ihned při deklaraci:
m := make(map[string]int)
 m["key"] = 42

Tím je zajištěno, že map nebude nil před zápisem do něj.