Циклы в Java | Примеры и синтаксис
Содержание
Существует много ситуаций, когда вы хотите выполнить блок утверждений несколько раз в ваших приложениях. Петли могут выполнять блок кода несколько раз. Цикл for в Java полезен для итерации массивов и последовательной обработки.
Синтаксис:
for (initialization; termination; increment) { statement(s) }
initialization: выполняется до начала цикла (блок кода).
term: определяет условие для запуска цикла (блок кода).
increment: выполняется каждый раз после того, как цикл (блок кода) был выполнен.
Цикл for инициализирует значение до первого шага. Затем проверяем условие на текущее значение переменной и выполняем оператор цикла, а затем выполняем шаг, выполняемый для каждого выполнения тела цикла. Для циклов также обычно используются, когда число итераций известно до входа в цикл. For-loops - это сокращенный способ создания циклов, когда число итераций известно, так как каждый цикл for может быть записан как цикл while.
Пример:
int counter = 4; for (int cnt = 1; cnt < = counter; cnt++) { System.out.println("Current value of cnt is: " + cnt); }
Инициализатор объявляет и инициализирует переменную локального цикла cnt, которая поддерживает подсчет итераций цикла. Цикл будет выполняться четыре (4) раза, потому что мы устанавливаем условие cnt меньше или равно счетчику.
for (int cnt = 1; cnt < = counter; cnt++) initialization: int cnt = 1 Initialize the variable cnt as 1, that is when the loop starts the value of cnt is set as 1 termination: i < = counter Set the condition i < =counter , that is the loop will execute up to when the value of cnt < = 4 (four times) increment: cnt++ Set the step for each execution of loop block as cnt++ ( cnt = cnt +1)
Вывод кода следующим образом:
Current value of i is: 1 Current value of i is: 2 Current value of i is: 3 Current value of i is: 4
Полный исходный код
public class TestClass { public static void main(String[] args) { int counter = 4; for (int cnt = 1; cnt < = counter; cnt++) { System.out.println("Current value of cnt is: " + cnt); } } }
Бесконечная петля
Все выражения операторов цикла for являются необязательными. Цикл становится бесконечным циклом, если условие никогда не становится ложным. Вы можете сделать бесконечный цикл, оставив условное выражение пустым.
for ( ; ; ) { System.out.println("Infinite Loop!!!"); }
В приведенном выше коде цикл будет выполняться бесконечно, потому что нет инициализации, условия и шагов.
Обработка массивов с использованием циклов
«Массив» - это способ хранения коллекции «элементов». Было бы довольно сложно обрабатывать каждый из элементов массива индивидуально. Инструкция for также имеет другую форму, предназначенную для итерации через коллекции и массивы, ее можно использовать, чтобы сделать ваши петли более компактными и легко читаемыми. Общий подход заключается в использовании цикла for с переменной, используемой для отслеживания номера индекса и итерации по всему массиву. Следующая программа использует for для цикла через массив:
public class TestClass { public static void main(String[] args) { int[] arr = {2,4,8,16}; for(int i=0; i < arr.length; i++){ System.out.println(arr[i]); } } }
Вывод:
2 4 8 16
Для печати элементов массива используется проверка с помощью следующего расширенного цикла.
public class TestClass { public static void main(String[] args) { int[] arr = {2,4,8,16}; for(int i:arr){ System.out.println(i); } } }
Вывод:
2 4 8 16
В приведенном выше коде значение i сначала инициализируется с помощью arr [0], то есть 2, и выполняется тело цикла for, которое вызывает печать целых чисел на экране. Далее arr [1], то есть 4 присваивается x, и тело выполняется снова. Таким образом, цикл продолжается до тех пор, пока все элементы не будут напечатаны. Здесь мы видим, что расширенный цикл for используется для итерации не только массива, но и коллекции в целом.