Junior — Middle
Hali hali tayyorlanmagan Map turidagi o'zgaruvchiga qanday harakatlar mumkin?
sobes.tech AI
AIdan javob
Go tilida, map turidagi o'zgaruvchi standart ravishda nil qiymatiga ega, agar u initsializatsiya qilinmagan bo'lsa.
nil bo'lgan map bilan quyidagi amallar mumkin:
- Kalit bo'yicha qiymatni o'qish — u null qiymat va kalit mavjud emasligini bildiruvchi belgi bilan qaytariladi.
value, ok := map[key]operatori yordamida kalitning mavjudligini tekshirish.
Qabul qilinmaydigan amallar:
- Yozish (kalitga qiymat tayinlash) panic bilan natijalanadi.
deletekabi funksiyalarni chaqirish,nilmapda xavfsiz va panic chaqirmaydi.
Misol:
var m map[string]int // m == nil
v, ok := m["key"] // ok == false, v == 0
// m["key"] = 10 // panic: nil mapga yozish
delete(m, "key") // xavfsiz, hech narsa qilmaydi
Yozish uchun mapni initsializatsiya qilish kerak, masalan, make yordamida:
m = make(map[string]int)
m["key"] = 10 // endi ishlaydi