Если видео недоступно для просмотра, попробуйте выключить блокировщик рекламы.

Работа с массивами практически всегда подразумевает итерацию по его элементам. Самый простой способ выполнить её — циклы.

Обход

В данном коде создается массив в цикле происходит обход массива и вывод на экран всех элементов.

Рассмотрим этот этап подробнее. При обходе массива циклом for, как правило, счетчик(переменная i, значение которой изменяется) играет роль индекса в массиве. Он инициализируется нулем и увеличивается до длины массива(св-во length), так чтобы максимальное значение i было равно индексу последнего элемента.

А что, если нам нужно вывести значения в обратном порядке? Для этого есть два способа. Один — идти в прямом порядке, то есть от нулевого индекса до последнего, и каждый раз вычислять нужный индекс по такой формуле размер массива - 1 - текущее значение счетчика.

Но есть и другой способ. Можно просто идти от верхней границы к нижней. В такой ситуации код меняется на следующий:

for (int i = xs.length - 1; i >= 0; i--) {
    System.out.println(xs[i]);
}

При таком обходе проверка остановки должна быть именно на >=, иначе пропустится элемент с индексом 0.

Инициализация(заполнение) массива

Цикл for также удобно использовать при заполнении массива переменными, например мы можем создать массив случайных чисел в каких-то тестовых целях:

int n = 42;
double[] randoms = new double[n];
for (int i = 0; i < n; i++) {
    randoms[i] = Math.random();
}    

For-each

Форма записи for (инициализация; условие выхода; счетчик) {} часто бывает избыточна и многословна, поэтому в джаве есть более компактная форма записи:

for (type var : array) { 
    //выражение с var;
}

Здесь в переменной item содержится текущее значение. В общем случае рекомендуется использовать именно такую форму записи – в ней отсутствует счетчик, его проверка и изменение, она легче для чтения и понимания.

Мы учим программированию с нуля до стажировки и работы. Попробуйте наш бесплатный курс «Введение в программирование» или полные программы обучения по Node, PHP, Python и Java.

Хекслет

Подробнее о том, почему наше обучение работает →