Циклы "while" / "do ... while"

Цикл while выполняется до тех пор, пока заданное условие является верным (имеет значение true):

while (expression) {
    ...
    ...
}

Оператор while проводит анализ заданного условия, которое должно возвращать значение типа boolean, и, если в результате анализа получается значение true, то выполняются операции из блока while. После этого анализ условия повторяется. Таким образом выполнение блока while будет повторяться до тех пор, пока условие не вернет false. Если условие изначально ложно, то блок while выполнен не будет.

class MyClass {
    public static void main(String[] args){
        int count = 1;
        while (count < 11) {
            System.out.println(count);
            ++count;
        }
    }
}

Будьте внимательны, с помощью оператора while нетрудно создать бесконечный цикл. Например, если убрать из предыдущего примера инкремент переменной count.

Цикл do ... while отличается только порядком выполнения блока кода и анализа условия

do {
    ...
    ...
} while (expression)

В этом случае сначала будет выполнен блок do, а потом произведена проверка условия. Таким образом блок do будет гарантированно выполнен как минимум один раз.

Вопрос 1.

Что такое инкремент и какой цели он служит в циклах? Почему важно в теле циклов while / do while манипулировать переменными, содержащимися в условии?

Вопрос 2.

В каких ситуациях стоит использовать цикл while, а в каких do while?

Last updated