Junior — Middle
Map veri yapısında öğelerin dolaşım sırası nasıl gerçekleştirilir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Go dilinde, map veri yapısı, öğelerin dolaşımında belirli bir sıralama garantilemez. for range döngüsü kullanılarak dolaşım yapıldığında, sıralama rastgele olur ve program her çalıştırıldığında değişebilir.
Bir map üzerinde dolaşım örneği:
m := map[string]int{"a": 1, "b": 2, "c": 3}
for key, value := range m {
fmt.Println(key, value)
}
Sıralı dolaşım gerekiyorsa, genellikle anahtarlar dilimlere çıkarılır, sıralanır ve sonra sıralı dilim üzerinde dolaşılır:
keys := make([]string, 0, len(m))
for k := range m {
keys = append(keys, k)
}
sort.Strings(keys)
for _, k := range keys {
fmt.Println(k, m[k])
}
Bu şekilde, map içindeki dolaşım sırası varsayılan olarak belirlenmemiştir ve rastgeledir.