Найти в Дзене
yagdmitrij

Цикл for

В прошлой статье мы познакомились с циклами while и do-while, а в этой рассмотрим:

  • Цикл for и принцип его работы.
  • Варианты записи цикла for.
  • Понятие бесконечного цикла и цикла без тела.

Цикл for немного отличается как в написании, так и в понимании его работы от предыдущих циклов. Для начала запишем его представление:

for (инициализация; условие; итерация) {

тело цикла;

}

Инициализация. Здесь происходит инициализация переменной цикла, которой присваивается начальное значение. Эта переменная будет управлять циклом, его периодами (повторениями). Здесь следует отметить, что эта часть цикла выполняется только один раз при работе цикла.

Условие. Здесь переменная, управляющая циклом, сравнивается с каким-то значением. Дальше все понятно: true – выполнение тела цикла, а false – цикл завершается.

Итерация. Чаще всего в этой части цикла происходит увеличение или уменьшение управляющей переменной.

Важно понимать, как работает схема цикла for. Вначале выполняется инициализированная часть, и как мы уже знаем, только один раз во время работы цикла. Дальше выполняется условие, затем, если условие true, выполняется тело, в котором находятся операторы цикла, и в конце – итерация цикла. Выполнение цикла for происходит по следующей схеме, представленной ниже. Здесь программа с каждым периодом или шагом цикла выводит на экран управляющую переменную.

схема цикла for
схема цикла for

Java допускает использовать в циклах несколько управляющих переменных, разделяемых запятыми.

схема цикла for
схема цикла for

Следует заметить, что в условном выражении цикла for не обязательно должна проверяться управляющая переменная. Это может быть любое логическое выражение. Более того, любая из трех частей цикла может отсутствовать, или сразу все части. Цикл, у которого отсутствуют инициализация, условие и итерация называется бесконечным циклом. Справедливости ради, бесконечный цикл не может быть бесконечным точно так, как не может быть вечного двигателя. Всегда найдутся причины прерывания бесконечного цикла. Например, память переполнилась, и система аварийно завершилась. А это значит, что и выполнение бесконечного цикла завершилось.

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

Рассмотрим эти моменты в галерее изображений (листаем).

Интерес представляет листинг программы «цикл for с телом». В этой программе с каждым шагом выполняется инкремент переменной «x». Возникает вопрос, почему в теле на последнем шаге х=4, а конечный результат программы х=5? Дело в том, что на последнем шаге в итерационной части цикла переменной «х» присваивается значение «5», однако условие не выполняется и цикл завершается с итоговым значением х=5.

Подведем итоги. В статье мы познакомились с циклом for и его формами записи. В следующей статье мы продолжим изучение и разберем его разновидность в стиле for each. Также рассмотрим прерывание циклов, их переменные и вложенные циклы.

Ставьте лайки и подписывайтесь на канал, и вас ждет масса увлекательных статей по программированию!