Sobes.tech
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.