Junior — Middle
Programlama dilinde Map veri yapısı anahtarlara göre sıralanabilir mi?
sobes.tech yapay zeka
AI'dan gelen yanıt
Go dilinde yerleşik veri yapısı olan map, anahtarlar sıralamasını garanti etmez. Map içindeki öğelerin dolaşım sırası rastgeledir ve iterasyonlar arasında değişebilir.
Eğer öğeleri anahtarlara göre sıralamak gerekiyorsa, anahtarlar bir dilim içine çıkarılmalı, sort kullanılarak sıralanmalı ve ardından sıralı anahtarlar sırasıyla map dolaşılmalıdı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 kendisi sıralı değildir, ancak sıralama manuel olarak gerçekleştirilebilir.