Sobes.tech
Junior — Middle

Milyen esetekben biztonságos adatokat olvasni egy Map-ből, amelyet még nem inicializáltak kifejezetten?

sobes.tech MI

Válasz az MI-től

Go-ban, egy map-ből való olvasás, amelyet nem inicializáltak kifejezetten (azaz nil), biztonságos, de korlátozásokkal.

Ha a map nil, akkor:

  • A kulcs szerinti érték olvasása a típus alapértelmezett értékét és false-t ad vissza a kulcs létezésének ellenőrzésekor.
  • Egy ilyen map-be írás (hozzárendelés) pánikot okoz.

Példa:

var m map[string]int // m == nil

value, ok := m["key"] // biztonságos, value == 0, ok == false

// m["key"] = 10 // pánik: hozzárendelés egy nil map-hez

Ezért, ha nem inicializált map-ből olvasunk, az biztonságos, de írni nem lehet bele. A íráshoz először inicializálni kell a make segítségével.