Java цикл for синтаксис

Java цикл for синтаксис thumbnail

Говорят, что лучший программист — ленивый программист. Вместо того, чтобы совершать однотипные действия по нескольку раз, он придумает алгоритм, который сделает эту работу за него. А еще он сделает его хорошо, чтобы не нужно было переделывать.

Как используют цикл for в Java - 1Примерно так, чтобы много раз не писать один и тот же код, придумали циклы. Представим, что нам нужно вывести в консоль числа от 0 до 99. Код без цикла:

System.out.println(0);
System.out.println(1);
System.out.println(2);
System.out.println(3);
System.out.println(4);
System.out.println(5);
// И так далее

Этот код займет 100 строк! Очень много. А вот как это будет выглядеть с циклом:

for(int i = 0; i < 100; i++) {
System.out.println(i);
}

Всего 3 строки!

Что такое циклы for?

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

  1. Приготовить стакан.
  2. Открыть крышку.
  3. Получить 1 каплю.
  4. Получить 2 каплю.
  5. Получить 30 каплю.
  6. Закрыть лекарство.
  7. Принять полученную порцию.

Этот алгоритм можно объяснить гораздо быстрее:

  1. Приготовить стакан.
  2. Открыть крышку капель.
  3. Получить 30 капель.
  4. Закрыть лекарство.
  5. Принять полученную порцию.

Мы практически каждый день используем цикл for в разговоре с другими людьми: “…20 шагов дальше по улице…”, “…сделай 10 повторений и еще 5 в 2 раза медленнее…”, “…сделай 5 покупок в различных категориях и получи приз…” можно продолжать долго, но смысл ясен.

В Java Цикл for необходим для сокращения кода и его лаконичности.

Принцип работы цикла for

For цикл используется следующим образом:

for(<начальная точка>; <условие выхода>; <операторы счетчика>) {
// Тело цикла
}
Пример перебора цифр от 0 до 5 и вывод каждой в консоль:
for(int i = 0; i < 5; i++) {
System.out.println(i);
}

Вывод:


1
2
3
4

Если перевести данную запись на человеческий язык, получится следующее:

Создай переменную i с начальным значением 0, пока она не достигнет 5, прибавляй к ней по 1 и на каждом шаге записывай значение i в консоль.”

В основе работы цикла for в Java лежат три стадии, их можно изобразить следующей схемой:
Как используют цикл for в Java - 2Условие выхода из цикла — это булево выражение. Если оно ложно, цикл будет завершен. В примере выше переменная i увеличивается на 1. Если ее значение менее 5, цикл продолжается. Но как только i станет больше или равно 5, цикл прекратится.

Оператор счетчика — выражение, которое выполняет преобразование переменной счетчика. В примере выше переменная i увеличивалась на 1. То есть цикл будет выполнен ровно 5 раз. Если оператор счетчика будет прибавлять по 2 к переменной i, результат будет иным:

for(int i = 0; i < 5; i = i + 2) {
System.out.println(i);
}

Вывод:


2
4

Также можно умножать переменную, делить, возводить в степень, в общем, делать все, что угодно. Главное, чтобы в результате преобразования получилось число.

Тело цикла — любой код, который может быть выполнен. В примере выше в теле цикла был вывод значения переменной i в консоль, однако содержимое данного тела ограничено задачей и фантазией.

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

Если задать условие выхода из цикла как true:

for(int i = 0; true; i++) {
if(i % 1000000 == 0) System.out.println(i);
}
System.out.println(“Loop ended”);

То код после цикла будет помечен ошибкой unreachable statement, так как никогда не будет исполнен.

Задача на смекалку: в результате запуска кода ниже будет ли выведено в консоль “Loop ended” или цикл будет выполняться бесконечно?

for(int i = 0; i > -1; i++) {
if(i % 1000000 == 0) System.out.println(i);
}
System.out.println(“Loop ended”);

Ответ: будет. Переменная i рано или поздно достигнет максимального значения, а дальнейшее увеличение превратит ее в максимальное отрицательное, в результате чего условие выхода будет выполнено (i < = -1).

Цикл forEach

При работе с циклами иногда приходится перебирать массивы или коллекции. Обычно массив можно перебрать с помощью цикла for:

public void printAllElements(String[] stringArray) {
for(int i = 0; i < stringArray.length; i++) {
System.out.println(stringArray[i]);
}
}

И это правильно. Однако, для перебора всех элементов массива по очереди придумали конструкцию forEach. Ее сигнатура следующая:

for(<Тип элемента> <Имя переменной, куда будет записан очередной элемент> : <Название массива>) {
// Тело цикла
}

Перебрать массив строк и вывести каждую в консоль можно следующим способом:

public void printAllElements(String[] stringArray) {
for(String s : stringArray) {
System.out.println(s);
}
}

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

Как используются циклы for

А теперь рассмотрим несколько примеров использование цикла for в Java для решения разнообразных задач.

Обратный цикл (от большего к меньшему)

for(int i = 5; i > 0; i–) {
System.out.println(i);
}

Вывод:

5
4
3
2
1

Несколько переменных и увеличение счетчика в теле цикла

В цикле for можно использовать несколько переменных, например их можно преобразовывать в операторе счетчика:

int a = 0;
for(int i = 5; i > 0; i–, a++) {
System.out.print(“Шаг: ” + a + ” Значение: “);
System.out.println(i);
}

Вывод:

Шаг: 0 Значение: 5
Шаг: 1 Значение: 4
Шаг: 2 Значение: 3
Шаг: 3 Значение: 2
Шаг: 4 Значение: 1

Или объявить две переменные и идти по циклу, пока они не будут равны друг другу:

for(int i = 5, j = 11; i != j; i++, j–) {
System.out.println(“i: ” + i + ” j: ” + j);
}

Вывод:

i: 5 j: 11
i: 6 j: 10
i: 7 j: 9

Вряд ли это действие имеет какую-либо ценность, но знать о такой возможности полезно.

В цикле for также можно создавать внутренние циклы. В этом случае количество шагов цикла будет умножаться:

Читайте также:  Рыцари сорока островов цикл

for(int i = 0; i < 5; i++) {
System.out.print(i + ” | “);
for(int j = 0; j < 5; j++) {
System.out.print(j + ” “);
}
System.out.print(‘n’);
}

Вывод:

0 | 0 1 2 3 4
1 | 0 1 2 3 4
2 | 0 1 2 3 4
3 | 0 1 2 3 4
4 | 0 1 2 3 4

В цикле со счетчиком j есть возможность обращаться к счетчику внешнего цикла. Благодаря этому вложенные циклы — идеальный способ обхода двумерного, трехмерного и прочих массивов:

int[][] array = { {0, 1, 2, 3, 4 },
{1, 2, 3, 4, 5},
{2, 3, 4, 5, 6},
{3, 4, 5, 6, 7}};

for(int i = 0; i < array.length; i++) {
for(int j = 0; j < array[i].length; j++) {
System.out.print(array[i][j] + ” “);
}
System.out.print(‘n’);
}

Вывод:

0 1 2 3 4
1 2 3 4 5
2 3 4 5 6
3 4 5 6 7

Досрочное завершение цикла

Если при обработке цикла нужно его прервать, используйте оператор break, который останавливает работу текущего тела цикла. Все последующие итерации также пропускаются:

public void getFirstPosition(String[] stringArray, String element) {
for (int i = 0; i < stringArray.length; i++) {
if(stringArray[i].equals(element)) {
System.out.println(i);
break;
}
}
}

Метод выведет позицию первого искомого элемента в массиве:

String[] array = {“one”, “two”, “three”, “Jeronimo”};
getFirstPosition(array, “two”);

Вывод:

1

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

Еще один способ создать бесконечный цикл for — оставить пустой область объявления счетчика, условие выхода и оператор счетчика:

for (;;) {
}

Но учти, что в большинстве случаев бесконечный цикл — свидетельство логической ошибки. У такого цикла обязательно должно быть условие выхода.

На курсе JavaRush знакомство с циклами происходит на четвертом уровне обучения в первом квесте (Java Syntax). Отдельные лекции посвящены циклу for, сравнением этого цикла в Java и языке Pascal. Также в курсе есть подборка задач по этой теме.
Как используют цикл for в Java - 3

Источник

Что такое циклы

Программа, написанная на языке Java, состоит из определенного кода. Обычно он в выполняется последовательно: строка за строкой, сверху вниз. Но есть и такие конструкции кода, которые меняют линейное выполнение программы. Их называют управляющими конструкциями.
Циклы в Java - 1Благодаря им, код можно выполнять выборочно. Например, запустить один блок кода вместо другого.

Циклы — это разновидность управляющих конструкций для организации многократного выполнения одного и того же участка кода.

Код внутри такой управляющей конструкции выполняется циклично. Каждое выполнение кода — это итерация цикла. Количество итераций регулируется условием цикла. Код, который выполняется внутри цикла, называют телом цикла.

Известны такие виды циклов:

  1. Циклы с предусловием: условие выполнения определяется перед первой итерацией.

  2. Циклы с постусловием: условие выполнения определяется после первой итерации (поэтому они всегда выполняются минимум один раз). Полезны, когда нужно выполнять некое действие, пока не реализуется некое условие: например, считывать ввод пользователя, пока он не введет слово “stop”.

  3. Циклы со счетчиком: количество итераций определяется смоделированным счетчиком. В условии цикла задается его начальное и конечное значение. Каждую итерацию счетчик наращивается. Мы можем заранее определить количество итераций.

    Эти циклы бывают полезны, когда нужно перебрать все элементы в какой-то коллекции. Циклы со счетчиком называют “циклами для…”. “Для каждого элемента некоторой коллекции осуществить следующие действия”.

    Допустимы случаи, когда выполнение цикла можно прервать до достижения его условия. Например, если у нас есть коллекция из 100 чисел и нам необходимо понять, содержит ли она отрицательные числа. Мы можем начать перебор всех чисел, используя цикл “для”. Но когда мы найдем первое отрицательное число, нам не обязательно перебирать оставшиеся числа. Мы можем прервать выполнение цикла, если его дальнейшее выполнение не имеет смысла. Подобные ситуации называют прерыванием цикла.

  4. Безусловные циклы — циклы, которые выполняются бесконечно. Например: “Пока 1=1, печатать “1=1””. Такая программа будет выполняться, пока ее вручную не прервут.

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

    Подробнее с циклами в языке программирования Java можно познакомиться на 4-ом уровне курса JavaRush. В частности, с циклами while и for.

Циклы в Java

Теперь рассмотрим циклы в Java. В этом ЯП их есть несколько типов:

  • while — цикл с предусловием;
  • do..while — цикл с постусловием;
  • for — цикл со счетчиком (цикл для);
  • for each.. — цикл “для каждого…” — разновидность for для перебора коллекции элементов.

while, do.. while и for можно использовать в качестве безусловных циклов.

Сравнить синтаксис циклов в разных языках программирования можно на четвертом уровне обучения курса JavaRush. Например циклов for и while.

Рассмотрим кратко каждый из представленных типов.

Цикл while

Этот цикл в Java структурно выглядит так:

while (expression) {
statement(s)
}

Здесь:

  • expression — условие цикла, выражение, которое должно возвращать boolean значение.
  • statement(s) — тело цикла (одна или более строк кода).

Перед каждой итерацией будет вычисляться значение выражения expression. Если результатом выражения будет true, выполняется тело цикла — statement(s).

Пример:

public class WhileExample {
public static void main(String[] args) {
int countDown = 10;

while (countDown >= 0) {
System.out.println(“До старта: ” + countDown);
countDown –;
}

System.out.println(“Поехали !”);

}
}

Вывод:

До старта: 10
До старта: 9
До старта: 8
До старта: 7
До старта: 6
До старта: 5
До старта: 4
До старта: 3
До старта: 2
До старта: 1
До старта: 0
Поехали !

Используя while, можно создать бесконечный цикл:

while (true) {
// тело цикла
}

Чтобы прервать выполнение цикла, используется оператор break.

Например:

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

int count = 1;
while (true) {
System.out.println(“Строка №” + count);
if (count > 3) {
break;
}
count++; // Без наращивания цикл будет выполняться вечно
}

}
}

Вывод:

Читайте также:  Нормальный цикл при скудных месячных

Строка №1
Строка №2
Строка №3
Строка №4

Попрактиковаться в написании своих циклов можно уже на 4-ом уровне курса JavaRush.

Цикл do..while

Структура do.. while выглядит так:

do {
statement(s)
} while (expression);

Здесь:

  • expression — условие цикла, выражение, которое должно возвращать boolean значение.
  • statement(s) — тело цикла (одна или более строк кода).

В отличие от while, значение expression будет вычисляться после каждой итерации. Если результатом выражения будет true, в очередной раз выполнится тело цикла — statement(s) (как минимум раз).

Пример:

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

Вывод:

count = 1
count = 2
count = 3
count = 4
count = 5
count = 6
count = 7
count = 8
count = 9
count = 10

Цикл for

Этот Java цикл выглядит так:

for (initialization; termination; increment) {
statement(s)
}

Здесь:

  • initialization — выражение, которое инициализирует выполнение цикла. Исполняется только раз в начале цикла. Чаще всего в данном выражении инициализируют счетчик цикла
  • termination — boolean выражение, которое регулирует окончание выполнения цикла. Если результат выражения будет равен false, цикл for прервется.
  • increment — выражение, которое исполняется после каждой итерации цикла. Чаще всего в данном выражении происходит инкрементирование или декрементирование переменной счетчика.
  • statement(s) — тело цикла.

Выражения initialization, termination, increment опциональны. Если опустить каждое из них, мы получим бесконечный цикл:

// бесконечный цикл
for ( ; ; ) {
// код тела цикла
}

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

public class ForExample {

public static void main(String[] args) {
for (int i = 1; i < 6; i++) {
System.out.println(“Строка №” + i);
}
}
}

Вывод:

Строка №1
Строка №2
Строка №3
Строка №4
Строка №5

Практикум по циклу for представлен на четвертом уровне курса JavaRush.

Цикл for each

Этот цикл Java — разновидность цикла for для итерации коллекций и массивов.

Структура for each выглядит так:

for (Type var : vars) {
statement(s)
}

Здесь:

  • vars — переменная, существующий список или массив
  • Type var — определение новой переменной того же типа (Type), что и коллекция vars.

Данную конструкцию можно прочитать так: “Для каждого var из vars сделать…”.

Предположим, у нас есть массив строк из названий дней недели. Выведем каждый элемент этого массива на печать:

public class ForExample {

public static void main(String[] args) {
String[] daysOfWeek =
{ “Понедельник”, “Вторник”, “Среда”, “Четверг”, “Пятница”, “Суббота”, “Воскресенье” };

for (String dayOfWeek : daysOfWeek) {
System.out.println(dayOfWeek);
}
}
}

Циклы Java изучаются на курсе JavaRush на четвертом уровне квеста Java Syntax. Попробуйте свои силы в решении задач по этой теме 🙂
Циклы в Java - 2

Источник

Повторяющееся исполнение набора инструкций называется циклом. Циклы в Java делятся на три типа:

  1. While;
  2. For;
  3. Do While
  • Выше перечислено три разных типа циклов, которые используются с одинаковой целью, и отличаются только синтаксисом;
  • Из-за синтаксических различий может отличаться и их образ действия. Вскоре мы рассмотрим эти различия.

For – самый популярный цикл из трёх доступных. Всё, что можно делать при помощи цикла while Java, легко делается и с помощью цикла for.

Существует два типа цикла for:

  1. Обычный цикл for;
  2. Вложенный for.

Синтаксис:

for(initialization; condition; incr/decr)
{
—–
—–
}
  • Когда элемент управления натыкается на цикл for, он сначала выполняет инициализацию. Эта часть выполняется один раз;
  • Затем контроллер переходит к разделу с условиями. Если оценка условий выдает результат true, то контроллер переходит к телу цикла.

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

Когда условие даёт значение true, выполняется тело цикла. Затем контроллер переходит к разделу incr/decr. Здесь указываются переменные инкремента или декремента.

После выполнения раздела incr/decr, контроллер переходит к разделу условий. Если результат будет true, то выполняется тело цикла. Затем переход к разделу incr/decr, а потом к разделу условий. Этот процесс будет повторяться до тех пор, пока оценка условий будет равно true.

for(int a=1; a<=3; a++)
{
System.out.println(“drink more water”);
}

В приведённом выше примере переменная инициализируется значением 1.

Это действие происходит всего один раз. После чего контроллер переходит к условию a:

class example
{
public static void main(String arg[])
{
int i;
for(i=1;i<=3;i++)
{
System.out.print(“hello world”);
}
}
}

Результат:

hello world
hello world
hello world

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

То есть:

for(int len=1;len<=max; len++)
{
Some statements;
}

int x=len; — не валидна, так как len уже освободилась;
int len=p; — валидна, так как рассматривается в качестве новой переменной.

Пример:

class ForLoopBasics4
{
public static void main(String args[])
{
for(int i=1;i<=5;i++)
{
System.out.println(i);
}
}
}

Результат:

Пример программы:

class ForLoopBasics5
{
public static void main(String args[])
{
for(int i=1;i<=5;i++)
{
System.out.println(i); //1 2 3 4 5
}
System.out.println(i);//error for unknown variable i
}

Результат:

error: cannot find symbol
System.out.print(i);
^

Описание

В приведенной выше программе возникает ошибка, так как переменная i освобождается после выхода из цикла Java.

Пример 2:

class ForLoopBasics6
{
public static void main(String args[])
{
int i;
for( i=1;i<=5;i++)
{
System.out.println(i); //1 2 3 4 5
}
System.out.println(i); //6
}

Результат:

Описание:

В программе, приведенной выше, ошибки не возникает, так как в ней используется переменная i, которая была объявлена за пределами цикла.

  1. В теле цикла в Java может быть любое количество инструкций;
  2. Все они должны быть заключены в фигурные скобки;
  3. Если в теле цикла есть только одна инструкция, то фигурные скобки необязательны.
Читайте также:  Реклама в краснодаре полный цикл

Пример 1:

for(double b=2.3; b<=10; b+=1.2)
{
System.out.print(b);
System.out.print(10-b);
}

Пример 2:

for(int c=’A’; c<=’Z’; c++)
{
System.out.print(“ “+(char)c);
}

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

По окончании инициализации этот раздел завершается точкой с запятой. В следующем примере вложенного цикла Java мы поместили в раздел инициализации три инструкции, разделенные запятыми: (a=10), (b=20) и (c=30).

Пример:

for(a=10, b=20, c=30; a+b <= c ; a++)
{
StatementA;
}

Пример программы:

class ForLoopBasics9
{
public static void main(String args[])
{
int a,b,c;
for(a=10, b=20, c=33; a+b <= c ; a++)
{
System.out.println(true);
}
}
}

Результат:

  • Подобно разделу с инициализацией, в разделе incr/decr также может быть несколько инструкций, указанных через запятую.

Пример:

for(a=1,b=5; a<=b; a+=2, b++)
{
statementA;
}

Пример программы:

class ForLoopBasics10
{
public static void main(String args[])
{
int a,b,c;
for(a=1,b=5; a<=b; a+=2, b++)
{
System.out.println(a +”<=”+ b);
}
}
}

Результат:

1<= 5
3<= 6
5<= 7
7<= 8
9<= 9

Но в разделе условий цикла в Java ничего не отделяется запятыми. Все предполагаемые условия должны комбинироваться при помощи операторов AND или OR и образовывать единое условие.

Пример:

<b>for (a=2; a

for(int a=9; a<=b; a++)
{
}

Пример программы:

class ForLoopBasics11
{
public static void main(String args[])
{
int a,b,c,n=10;
a=0;
b=1;
System.out.print(a+” “+b+” “);
for(int i=2;i<n;i++)
{
c=a+b;
a=b;
b=c;
System.out.print(c+” “);
}
}
}

Результат:

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

Пример:

for(int a=11; a<=b; a++)
{
statementA;
for(int x=12; x<=y; x++)
{
statementB;
}
statementC;
}

В данном примере контроллер доходит до раздела инициализации за пределами цикла.

Объяснение приведённого выше примера:

Значением a = 11. Затем контроллер переходит к разделу условий. Если условие выдаёт значение true, контроллер переходит к телу цикла и выполняет statementA.

Затем контроллер переходит к разделу инициализации внутреннего цикла, а после этого – к разделу условий.

Если условия выполняется, программа переходит к телу цикла и выполняет statementB. После этого контроллер переходит к разделу с увеличением значения во внутреннем цикле for, а после – к разделу условий внутреннего цикла. Вложенный цикл Java повторяется до тех пор, пока внутреннее условие выдаёт значение true.

Пример программы:

class NestedForLoop
{
public static void main(String args[])
{
int i,j;
for(i=1;i<=3;i++)
{
System.out.println(i+”iteration”);
for(j=1;j<=3;j++)

{
System.out.println(j);
}
}
}
}

Результат:

iteration1
1
2
3
iteration2
1
2
3
iteration3
1
2
3

Внутрь другого цикла в Java for можно поместить любую конструкцию. Здесь нет ограничения по количеству конструкций.

Пример:

Чтобы выйти из цикла for в середине тела, можно использовать оператор break. Он выведет контроллер из цикла, независимо от условий в объявлении цикла.

Пример:

for(a=16; a<=i; a+=3)
{
——
if(condition)
break;
——
}

Если мы хотим перейти к следующей итерации цикла с середины тела (пропустив оставшиеся инструкции текущей итерации), можно использовать оператор continue.

Пример:

for(a=17; a<=j; a*=2)
{
——
if(condition)
continue;
——
}

Перед тем, как написать цикл на Java, нужно знать, что раздел условий должен выдавать результат в виде логического выражения. В разделе инициализации можно создавать переменные, что невозможно в разделе увеличения. Ниже представлен валидный код.

Иногда инициализация происходит в тот момент, когда контроллер доходит до цикла for. В таком случае в разделе инициализации можно написать пустую инструкцию (пусть это будет просто точка с запятой). Аналогичным образом можно пропустить раздел увеличения. Если использовать пустое условие (просто a), то результат будет расцениваться как true. То есть, все последующие применения будут валидными.

Пример 1:

int a=1;
for( ; a<=3; a++)
statementA;

Пример 2:

for(int a=1; a<=3; )
{
statementA;
a++;
}

Пример 3:

for(int a=1; ; a++)
{
if(a>3)
break;
statementA;
}

Если мы запишем цикл for как for(;;), и в нём не будет break или return, то это бесконечный цикл Java. Приведенные ниже циклы являются бесконечными.

Пример 1: for( ; ; )
Пример 2: for(init; true; incr)

Синтаксис:

for(variable : collection)
{
—–
—–
}

Определение:

Этот тип циклов используется для перехода по набору элементов в строгом порядке (от начала к концу). Набором элементов может быть массив, ArrayList, LinkedList или любая другая коллекция.

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

Пример:

int a[]={10,20,30,40};
for(int i=0; i<a.length; i++)
{
System.out.println(a[i]);
}

В этом примере цикл повторяется четыре раза (количество элементов в массиве), и каждый раз выводится очередной элемент i (от 0 до 3).

Чтобы добиться такого же результата, можно использовать следующее условное обозначение.

Пример:

int a[]={10,20,30,40};
for(int x : a)
System.out.println(x);

В данном случае переменная x получает каждое значение из массива (по одному значению на итерацию), а затем выводится. Этот подход (foreach) подходит для обслуживания всех элементов в списке. Если нам нужны отдельные фрагменты списка, то можно использовать обычный цикл в Java.

Пример:

ArrayList<Integer> al=new ArrayList<Integer>();
al.add(10); al.add(20); al.add(30); al.add(40);
for(int x : al)
{
System.out.println(x);
}

Мы можем выйти из этого цикла при помощи инструкции break. Чтобы пройтись по двухмерному массиву, можно использовать следующий код:

int a[][]={{1,2,3,4},{5,6,7,8},{9,8,7,6}};
for(int curArr[] : a)
for(int curEle : curArr)
System.out.print(curEle+” “);

В приведённом выше примере внешний цикл в Java проходит по массиву ссылок (где каждая ссылка обращается к массиву), а внутренний цикл проходит по каждому элементу текущего массива.

Данная публикация является переводом статьи «What Are Java Loops – Definition & Explanation» , подготовленная редакцией проекта.

Источник