Junior — Middle
Hələ ilkinləşdirilməmiş xəritədən dəyər çıxarmaq mümkündürmü?
sobes.tech Süni İntellekt
AI-dan cavab
Go-da, əgər xəritə (map) başlanğıcda qurulmayıbsa (yəni, nil-ə bərabərdirsə), ona açar vasitəsilə dəyər almağa cəhd panikaya səbəb olmadan, sadəcə dəyər növü üçün sıfır dəyərini və false boole bayrağını qaytaracaq, bu da açarın mövcud olmadığını göstərir.
Nümunə:
var m map[string]int // m == nil
value, ok := m["key"]
fmt.Println(value, ok) // Çıxış: 0 false
Lakin, əgər qeyri-qurulmuş xəritəyə dəyər yazmağa çalışsanız, panika baş verəcək:
m["key"] = 10 // panic: nil xəritəyə təyin etmə
Bu səbəbdən, xəritəni təhlükəsiz istifadə etmək üçün, onu make ilə qurmalısınız:
m = make(map[string]int)
m["key"] = 10 // indi düzgün işləyir