$ sudo teach IT
МОДУЛЬ 4 · УРОК 2

Цикл do-while

do-while похож на while, но с одним важным отличием: тело выполняется хотя бы один раз до проверки условия. Это полезно, когда нужно гарантировать хотя бы одну итерацию.

⏱ ~15 минут 🎓 Для начинающих 📌 Модуль 4

🔄 Синтаксис do-while

public class DoWhile {
    public static void main(String[] args) {
        int i = 1;
        do {
            System.out.println(i);
            i++;
        } while (i <= 5);
        // Обратите внимание: ; после while!
    }
}

Разница с while: в do-while тело выполняется сначала, потом проверяется условие:

// while: тело может не выполниться
int a = 10;
while (a < 5) {
    System.out.println(a);  // НЕ выполнится!
}

// do-while: тело выполнится хотя бы раз
int b = 10;
do {
    System.out.println(b);  // Выведет 10
} while (b < 5);

📝 Меню программы

import java.util.Scanner;

public class Menu {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int choice;

        do {
            System.out.println("\n=== МЕНЮ ===");
            System.out.println("1. Начать игру");
            System.out.println("2. Настройки");
            System.out.println("3. Выход");
            System.out.print("Выберите: ");
            choice = scanner.nextInt();

            switch (choice) {
                case 1 -> System.out.println("Запуск игры...");
                case 2 -> System.out.println("Открытие настроек...");
                case 3 -> System.out.println("До свидания!");
                default -> System.out.println("Неверный выбор");
            }
        } while (choice != 3);

        scanner.close();
    }
}

do-while идеален для меню: показать меню, получить выбор, обработать — и повторять, пока пользователь не решит выйти.

⚖️ while vs do-while

Свойство while do-while
Когда проверяется условие Перед телом После тела
Минимум итераций 0 1
Когда использовать Условие может быть false сразу Нужна хотя бы одна итерация

✅ Итоги урока

  • do { ... } while (условие); — тело выполняется хотя бы раз
  • Идеален для меню и ввода данных с валидацией
  • while — условие проверяется до тела (0+ итераций)
  • do-while — условие проверяется после тела (1+ итераций)

Далее: Цикл for — самый популярный цикл в Java →

Проверяем понимание

2 вопроса

Угадай число

Premium