Junior — Middle
Оё сохтори додаи Map кафолат медиҳад, ки тартиби воридшавии унсурҳоро нигоҳ дорад?
sobes.tech AI
Ҷавоб аз AI
Дар забони барномасозии Go, сохтори маълумоти map кафолат намедиҳад, ки тартиби ворид кардани унсурҳо нигоҳ дошта шавад. Итератсия дар map дар тартиби тасодуфӣ сурат мегирад, ки метавонад дар ҳар як гузариш тағйир ёбад.
Агар ниёз ба нигоҳ доштани тартиби воридот бошад, бояд структураи иловагӣ истифода шавад, масалан, срез (slice) барои нигоҳ доштани калидҳо дар тартиби лозим, ё истифодаи китобхонаҳои беруна, ки луғатҳои мураттабро амалӣ мекунанд.
Маслиҳат барои гузариш дар map бо нигоҳ доштани тартиби калидҳо:
package main
import "fmt"
func main() {
m := map[string]int{"a": 1, "b": 2, "c": 3}
keys := []string{"a", "b", "c"} // тартиби воридот
for _, k := range keys {
fmt.Println(k, m[k])
}
}