Массивы, срезы, карты в Go
Массивы
Массив — это нумерованная последовательность элементов одного типа, с фиксированной длинной
Срезы
Срез - это часть массива. Как и массивы срезы индексируются и имеют длину.
В отличии от массивов, их длину можно изменить.
Единственное отличие объявления среза от объявления массива - это отсутствие указания длины
в кваратных скобках
var x []float64
Создание среза
Срезы всегда связаны с каким-нибудь массивом. Срез в Go создается встроенной функцией make
x := make([]float64, 5, 10)
Другой способ создать срез — использовать оператор slice[low : high]
arr := [5]float64{1,2,3,4,5}
x := arr[0:5]
Карта
Карта (ассоциативный массив) — это неупорядоченная коллекция пар вида ключ-значение
Карта представляется в связке с ключевым словом map, следующим за ним типом ключа в скобках и типом значения после скобок
Создание карты
Чтобы создать пустую карту нужно использовать функцию make
make(map[key-type]val-type)
Пример создания и инициализации карты
n := map[string]int{"foo": 1, "bar": 2}