Sobes.tech
Junior — Middle

Hələ təyin olunmamış Map növündə dəyişənlə hansı əməliyyatlar mümkündür?

sobes.tech Süni İntellekt

AI-dan cavab

Go dilində, map növündən olan dəyişən təyin olunmayıbsa, standart olaraq nil dəyərinə malikdir.

nil olan map ilə aşağıdakı əməliyyatlar mümkündür:

  • Dəyəri açar üzrə oxumaq — bu, tipin sıfır dəyərini və açarın mövcud olmamağını göstərən bayrağı qaytarır.
  • value, ok := map[key] operatoru ilə açarın mövcudluğunu yoxlamaq.

Qadağan olunan əməliyyatlar:

  • Yazma (açar üçün dəyər təyin etmək) panic ilə nəticələnəcək.
  • delete kimi funksiyaları çağırmaq, nil map üzərində təhlükəsizdir və panic yaratmır.

Nümunə:

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

v, ok := m["key"] // ok == false, v == 0

// m["key"] = 10 // panic: nil map-ə təyin etmə

delete(m, "key") // təhlükəsiz, heç bir şey etmir

Yazma üçün map-in ilkinləşdirilməsi lazımdır, məsələn, make istifadə etməklə:

m = make(map[string]int)
m["key"] = 10 // indi işləyir