<<Предыдущий урок   Список уроков   Следующий урок>>

Уроки удобно выполнять в среде разработки IntelliJ IDEA, ссылка на страницу загрузки.

Есть два вида циклов в Java, for и while.

For

Цикл for состоит из трех секций:

for (int i = 0; i < 3; i++) {}

Первая секция выполняется один раз, когда мы входим в цикл.  В нашем примере здесь задается начальное значение переменной i. Вторая секция проверяет логическое условие, если оно возвращает true, выполняются операторы в цикле, если false, выход из цикла. Вторая секция в первый раз запускается сразу после первой секции, и выполняется каждый раз, пока условие верно, вызывая третью секцию. Третья секция — заключительный оператор, его действие выполняется каждый раз при выполнении цикла. В нашем примере это инкремент, который при каждом выполнении увеличивает значение переменной на единицу.

Таким образом, цикл будет работать 3 раза. Вот порядок команд:

int i = 0;
i < 3 // 0 < 3 = true
      // Inside of loop
i++ // i is now 1
i < 3 // 1 < 3 = true
      // Inside of loop
i++ // i is now 2
i < 3 // 2 < 3 = true
      // Inside of loop
i++ // i is now 3
i < 3 // 3 < 3 = false
      // Loop is done...

Мы можем опустить первую и третью секции цикла (как бы странно это ни выглядело), и цикл все еще будет работать:

for (;i < 5;) {}

Для случаев, где нужно использовать цикл схожих повторяющихся действий, мы используем цикл while

While

Синтаксис похож на предыдущий:

while (condition) {}

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

do {

} while(condition);

Не забудьте точку с запятой в конце.

Foreach

Другая версия for, это foreach. Но в Java решили не добавлять новое ключевое слово each. Ключевое слово, которое мы используем, все еще for, но когда мы хотим выполнить действия над элементами массива, делаем так:

int[] arr = {2, 0, 1, 3};
for (int el : arr) {
    System.out.println(el);
}

Это была короткая версия, эквивалентная следующей записи:

int[] arr = {1, 9, 9, 5};
for (int i = 0; i < arr.length; i++) {
    int el = arr[i];
    System.out.println(el);
}

Заметьте, что, если вы хотите использовать индекс элемента в цикле, Вы должны использовать более длинную версию и не можете использовать foreach.

break and continue

Эти два ключевых слова помогают нам управлять циклом из него. Оператор break останавливает цикл и переходит к оператору, следующему за ним:

int i;
for (i = 0; i < 5; i++) {
    if (i >= 2) {
        break;
    }
    System.out.println("Yuhu");
}
System.out.println(i);
// Output:
// Yuhu
// Yuhu
// 2

Оператор continue остановит текущую итерацию и переместится в следующую. Заметьте, что в цикле for действие в третьей секции будет выполнено при этом.

int i;
for (i = 0; i < 5; i++) {
    if (i >= 3) {
        break;
    }
    System.out.println("Yuhu");
    if (i >= 1) {
        continue;
    }
    System.out.println("Tata");
}
System.out.println(i);
// Output
// Yuhu
// Tata
// Yuhu
// Yuhu
// 3

Упражнение

Используя цикл, выведите на экран все четные числа из списка чисел в порядке получения. Не выводите числа, идущие после числа 237 в последовательности.

Выполните упражнение, прежде чем перейти к следующему уроку.

Дополнительное чтение:

Управляющие структуры. Общие сведения о циклах в Java

Конструкции выбора в языке Java: if…else, switch

Инструкции выхода в Java

<<Предыдущий урок   Список уроков   Следующий урок>>


admin

Обучающие видео-уроки по разработке приложений для операционной системы Android. Мы поможем любому новичку стать продвинутым разработчиком андроид-приложений!

47 комментариев

Nastya 1909 · 06.03.2019 в 10:57

public class Main {
public static void main(String[] args) {

for (int i = 0; i < 257; i++) {

if (i % 2==1)
continue;
System.out.println(i + " ");
}
}}

#3. Вводный курс по языку программирования JAVA. Условные операторы — Fandroid.info · 15.03.2019 в 09:13

[…] <<Предыдущий урок   Список уроков   Следующий урок>> […]

Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.