Назад к вопросам
Junior — Middle
82
Обеспечивает ли структура данных Map гарантированное сохранение порядка вставки элементов?
Ответ от нейросети
sobes.tech 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])
}
}