Go.Основы.Массивы
https://t.me/HotCheatSheetМассивы
var
переменная
[
длины_массива
]
тип_массива
переменная
:= [
длины_массива
]
тип_массива
{
значение1
,
значение2
,
значение3
, ...}
Пример:
var v1 [2]int v1[0] = 1 v1[1] = 2 v2[2] = 3 arr := [5]float64{ 98, 93, 77, 82, 83 }
Срезы
make([]
тип_массива
,
длина_массива
,
длина_массива_на_который_указывает_срез
)
имя_массива
[
позиция_начало
:
позиция_конец
]
append(
имя_массива
,
аргументы
)
copy(
копировать_в_массив
,
копировать_из_массива
)
Пример:
v1 := make([]float64, 5) v1 := make([]float64, 5, 10) arr := [5]float64{1,2,3,4,5} v2 := arr[0:5] v3_1 := []int{1,2,3} v3_2 := append(v3_1, 4, 5) // v3_2 содержит: [1,2,3,4,5] v4_1 := []int{1,2,3} v4_2 := make([]int, 2) copy(v4_2, v4_1) /* v4_2 содержит: [1,2], поскольку в массиве v4_2 есть место только для двух элементов */
Карты
переменная
:= make(map[
тип_ключ_карты
]
тип_значения_карты
)
delete(
имя_карты
,
значение_ключ_карты
)
Пример:
v1 := make(map[string]int) v1["ключ"] = 5 v2 := make(map[int]int) v2[1] = 10 delete(v2, 1)