Введение в массивы в Kotlin
Массив - это переменная, в которой подряд лежит несколько значений. Вместо десятка отдельных переменных заводят один массив и обращаются к его частям по номеру.
Каждое значение внутри массива называют
элементом. Элементы стоят в фиксированном
порядке: у первого номер 0, у следующего
1, и так далее. Этот номер называют
индексом.
Число элементов задают при создании и дальше оно не меняется. Такую величину называют длиной массива. Новую ячейку в тот же массив не вставляют: для большего числа элементов получают уже другой массив.
В оперативной памяти массив занимает один сплошной кусок. У первого элемента есть адрес. Второй лежит сразу за ним, третий сразу за вторым. Адрес нужной ячейки считают формулой: адрес начала плюс индекс, умноженный на размер одной ячейки. Поэтому чтение по индексу быстрое.
Фиксированная длина нужна для этой формулы. Кусок памяти берут сразу под известное число ячеек. Байты сразу после куска часто уже заняты другими данными, и растянуть его на месте нельзя. Зато у каждой ячейки нет отдельной ссылки на соседнюю, значения стоят плотно, а номер ячейки сразу дает ее адрес.
Тип элементов тоже задают при создании, и он один на весь массив. Тогда размер ячейки в байтах одинаковый, и формула адреса остается верной. Компилятор отклонит попытку положить в массив чисел строку. Проверка проходит при сборке программы, а не при каждом чтении элемента.
Массив удобен, когда данные связаны по смыслу:
оценки ученика, координаты точки, названия
дней недели. В Kotlin массив создают функцией
arrayOf. Как записать длину и тип,
разберем в следующих уроках.