Есть два основных способа создать map в Go:
make()Функция make() — это самый обычный способ создать пустой map:
m := make(map[string]int)
Такой синтаксис создаёт map с ключами типа string и значениями типа int. Ты можешь использовать любые допустимые типы для ключей и значений.
Ты также можешь инициализировать map со значениями, используя литерал map:
m2 := map[string]int{}
Это создаёт пустой map. Чтобы добавить начальные значения, используй:
m := map[string]int{"key1": 1, "key2": 2}
После создания ты можешь добавлять или изменять значения:
m["hi"] = 1
Когда ты берёшь значение из map, всегда используй идиому comma-ok, чтобы проверить наличие ключа:
val, ok := m["hello"]
if ok {
// Ключ существует, val содержит значение
} else {
// Ключ не существует
}
Это предотвращает ошибки, проверяя наличие ключа перед использованием значения. Если ты обратишься к несуществующему ключу без такой проверки, получишь нулевое значение для этого типа (0 для целых чисел, пустую строку для строк и т.д.).
make(map[keyType]valueType) для динамического создания mapКогда ты обращаешься к несуществующему ключу в Go map без использования idiom comma-ok, программа запаникует и упадет с runtime ошибкой.
Новый — ещё не проверен сообществом
Вы