Индексация массивов
Индексация в языках программирования — это механизм для доступа к элементу массива данных посредством ссылки на массив и посредством одного или более выражений, значения которых определяют позицию компоненты массива. Индекс — номер элемента множества, который указывает на конкретный элемент массива. В данном примере будут продемонстрированы методы работы с индексами.
Создадим матрицу размерностью 4 на 4 к интексам которой будем обращаться:
A = [1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16]
4×4 Matrix{Int64}:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
Существует два способа сослаться на определенный элемент в массиве. Наиболее распространенным способом является указание индексов строк и столбцов:
A[2, 2]
6
Менее распространенным, но иногда полезным является использование одиночного индекса, который проходит вниз по каждому столбцу по порядку:
println(A[1], " ", A[2], " ", A[3], " ", A[4], " ", A[5])
1 5 9 13 2
Использование одного индекса, для ссылки на определенный элемент в массиве, называется линейной индексацией.
Чтобы ссылаться на несколько элементов массива, используйте оператор двоеточия, который позволяет указать диапазон вида start:end. Например, перечислите элементы в первых трех строках и втором столбце массива:
A[1:3, 2]
3-element Vector{Int64}:
2
6
10
Двоеточие, без начального или конечного значений, указывает все элементы в этом измерении. Например, отобразим все столбцы в третьей строке таблицы:
A[3, :]
4-element Vector{Int64}:
9
10
11
12
Оператор двоеточия также позволяет создать вектор значений с равными интервалами, используя более общую форму start:step:end:
B = collect(0:10:100)
11-element Vector{Int64}:
0
10
20
30
40
50
60
70
80
90
100
Если опустить шаг, как в start:end, Julia будет использовать значение шага по умолчанию, равное 1:
B = collect(0:100)
101-element Vector{Int64}:
0
1
2
3
4
5
6
7
8
9
10
11
12
⋮
89
90
91
92
93
94
95
96
97
98
99
100