Пары ключ-значение в Go
Каждая пара связывает один ключ с одним значением. Ключи в одной карте не повторяются: второй раз записать тот же ключ значит заменить старое значение, а не добавить вторую пару с тем же ключом. Значения могут повторяться у разных ключей.
Тип ключа и тип значения задают один раз для всей карты. В литерале видно несколько пар сразу:
ages := map[string]int{"ann": 20, "bob": 30}
fmt.Println(ages["ann"])
fmt.Println(ages["bob"])
Две пары, два ключа, два числа. Обращение
ages с ключом "ann" дает
20, с ключом "bob" дает 30.
Новую пару добавляют записью по ключу, которого еще не было. Позже в разделе отдельно разберем замену и удаление; здесь важно держать в голове модель «один ключ, одно значение в карте».
room := make(map[string]int)
room["a"] = 1
room["b"] = 2
fmt.Println(len(room))
Создайте в codes литерал с ключами
"red" и "green" и числами
1 и 2. Выведите оба значения
по ключам.
Даны переменные:
room := make(map[string]int)
Запишите три разных ключа и выведите длину.
Может ли одна карта хранить одно и то же число под разными ключами? Приведите короткий пример литерала в ответе.