English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основной курс Java

Java Управление потоком

Java Массивы

Java Ориентированность на объекты (I)

Java Ориентированность на объекты (II)

Java Ориентированность на объекты (III)

Обработка исключений Java

Java Список (List)

Java Очередь (Queue)

Java Карта (Map)

Java Множество (Set)

Java Ввод/Вывод (I/O)

Java Reader/Writer

Другие темы Java

Цикл for Java

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

В компьютерной программе циклы используются для повторения определённых блоков кода до тех пор, пока не будет выполнено определённое условие (тестовое выражение равно false). Например:

Представьте, что нам нужно напечатать предложение на экране 50 раз. Хорошо, мы можем сделать это, используя команду print 50 раз (без использования цикла). Что если вам нужно напечатать предложение один миллион раз? В этом случае вам нужно использовать цикл. Используя цикл, мы можем написать команду print один раз и запустить её сколько угодно раз.

Это всего лишь простой пример, показывающий важность циклов в компьютерной программе.

Цикл for Java

Синтаксис цикла for в Java:

for (initialization; testExpression; update)
{
    // Код в теле цикла
{}

Работа цикла for

  1. Инициализация(initialization) выражение выполняется только один раз.

  2. Затем оцениваетсяТестВыражение (testExpression). Здесь тестовое выражение (testExpression) является логическим выражением.

  3. Если результат вычисления тестового выражения (testExpression) равен true, то выполняется код в теле цикла for.

  4. Затем выполняетсяОбновлениеВыражение (update).

  5. Вновь оценивается тестовое выражение (initialization).

  6. Если тестовое выражение равно true, то выполняется код в теле цикла for, и затем выполняется обновление.

  7.             Этот процесс продолжается до тех пор, пока тестовое выражение (testExpression) не будет оценено как false.

  8. Если результат вычисления тестового выражения (testExpression) равен false, то цикл for завершается.

Схема цикла for

Схема работы цикла for

Пример 1: цикл for

// Программа выводит предложение 10 раз
class Loop {
    public static void main(String[] args) {
      
        for (int i = 1; i <= 10; ++i) {
            System.out.println("Line " + i);
        {}
    {}
{}

Вывод:

Line 1
Line 2
Line 3
Line 4
Line 5
Line 6
Line 7
Line 8
Line 9
Line 10

В примере выше у нас есть

  • Выражение инициализации: int i = 1

  • Тестовое выражение: i <= 10

  • Выражение обновления: ++i

Здесь начальное значение i равно 1. Поэтому тестовое выражение сначала evaluates как true. Поэтому выполняется команда вывода. Теперь оценивается выражение обновления.

При каждом обновлении выражения i значение i увеличивается на 1. Затем снова оценивается тестовое выражение, и повторяется аналогичный процесс.

Этот процесс продолжается до тех пор, пока i равно 11. Когда i равно 11, тестовое выражение (i <= 10) становится false, и цикл for завершается.

Для получения дополнительной информации о тестовом выражении и способе его оценки обратитесь вРеляционные операторыЛогические операторы.

Пример 2: цикл for

// Программа находит сумму всех натуральных чисел от 1 до 1000.
class Number {
    public static void main(String[] args) {
      
        int sum = 0;
	   
        for (int i = 1; i <= 1000; ++i) {
            sum += i; // эквивалентно sum = sum + i
        {}
	   
        System.out.println("Sum = " + sum);
    {}
{}

Вывод:

Sum = 500500

Здесь у нас есть переменная sum. Ее начальное значение равно 0. Внутри цикла for мы инициализируем переменную i с значением 1.

В каждом итерации цикла for,

  • Присваивается значение переменной sum: sum + i

  • значение i увеличивается на 1

Цикл продолжается до тех пор, пока значение i больше 1000. Для лучшего визуального эффекта,

1 повторение: i = 1 и sum = 0 + 1 = 1
2 повторение: i = 2 и sum = 1 + 2 = 3
3 повторение: i = 3 и sum = 3 + 3 = 6
4 повторение: i = 4 и sum = 6 + 4 = 10
... .. ...
999 повторение: i = 999 и sum = 498501 + 999 = 499500
1000 повторение: i = 1000 и sum = 499500 + 1000 = 500500

Безконечный цикл

При использовании циклов мы должны всегда быть осторожны. Потому что если мы ошибочно установим тестовое выражение так, чтобы оно всегда было false, то цикл for будет работать вечно.

这称为无限循环。例如,

// бесконечный цикл
class Infinite {
    public static void main(String[] args) {
      
        int sum = 0;
        for (int i = 1; i <= 10; --i) {
            System.out.println("Hello");
        {}
    {}
{}

Здесь тестовое выражение (i <= 10) никогда не станет false, и hello будет постоянно печататься (теоретически по крайней мере).

for (; ; ) {
{}

Java for-each цикл (цикл итерации)

В Java还存在另一种for-цикл синтаксис, который можно использовать дляJava массивыJava наборы(называется цикл итерации). Например,“,

for (int a : array) {
    System.out.println(a);
{}

Чтобы узнать больше информации, пожалуйста, посетите:Java цикл итерации