Junior — Middle
Mapdə dövr üçün iterasiya elementi kimi nil dəyərindən istifadə etmək mümkündürmü?
sobes.tech Süni İntellekt
AI-dan cavab
Go-da, nil dəyəri map üçün döngüdə iterasiya elementi kimi istifadə edilə bilməz, çünki range map üzərində açar və dəyər qaytarır və nil dəyər yoxluğu deməkdir.
Əgər map içindəki dəyər göstərici və ya interfeysdirsə, o nil ola bilər və bu normaldır. Amma öz döngüçü nil ola bilməz.
Nümunə:
m := map[string]*int{
"a": nil,
"b": new(int),
}
for k, v := range m {
if v == nil {
fmt.Printf("açar %s nil dəyər ehtiva edir\n", k)
} else {
fmt.Printf("açar %s dəyər %d ehtiva edir\n", k, *v)
}
}
Burada, v nil ola bilər, amma map üzərində range düzgün işləyir.