Junior — Middle
Map üzerinde birkaç kez dolaşılırsa, anahtarların sırası korunur mu?
sobes.tech yapay zeka
AI'dan gelen yanıt
Go dilinde, map tipi, anahtarların yinelemesi sırasında sıralamayı garanti etmez. Her map üzerinde geçişte, anahtarların dolaşım sırası farklı olabilir çünkü dahili hash tablosunun temsili sıralı değildir.
Sıralamayı korumak istiyorsanız, örneğin, ekleme sırasını, ek bir veri yapısı kullanmalısınız, örneğin, anahtarların dilimi ve ona göre yinelemelisiniz.
Örnek:
m := map[string]int{"a": 1, "b": 2, "c": 3}
keys := []string{"a", "b", "c"}
for _, k := range keys {
fmt.Println(k, m[k])
}
Bu şekilde, yineleme dizisi istikrarlı ve öngörülebilir olacaktır.