Вступ до циклу For-Every на Java
Для кожного циклу введено в Java, починаючи з JDK 5. Він спрямований на повторне повторення всіх елементів колекції або масиву. Він також є в інших мовах, таких як C #, де він використовує ключове слово для-кожного. Однак Java використовує ключове слово "для" лише для реалізації для кожного циклу на відміну від C #, але його синтаксис відрізняється від звичайного для циклу. Цей цикл для кожного циклу також відомий як розширений цикл на Java.
Синтаксис
for(type iter_var : Collection) statement_block
Пояснення для кожного із термінів, що використовуються вище, наступне:
- 'type' позначає тип даних об'єктів
- 'iter_var' вказує ім’я змінної ітерації, яке зберігає кожне значення колекції під час ітерації через цикл.
- 'Колекція' визначає Збірник або масив, через який ми хочемо повторити.
- "блок-оператор" - це набір операторів, які ми хочемо виконати для кожної ітерації циклу.
Важливо відзначити, що цикл для кожного циклу здійснює доступ до елементів колекції / масиву послідовно, де він зберігає значення кожного елемента в змінній ітерації. Далі наведена схема потоку для кожного циклу.
Як ви помітили, існують певні тонкі відмінності між циклом і для кожного циклу. Для циклу потрібно заздалегідь вказати кількість ітерацій. Однак це не так з циклом для кожного циклу, оскільки цикл переходить з першого елемента в останній елемент колекції / масиву і не потребує вказівки кількості ітерацій.
Важливим моментом, який слід пам’ятати, є те, що тип, вказаний у циклі for для кожного, повинен відповідати типу елементів колекції, оскільки в іншому випадку виникнуть проблеми сумісності.
Приклади
Для петлі
Знайдемо середній вік групи людей, які використовують для циклу:
Код
public class Main
(
public static void main(String() args) (
int ages() = (15, 18, 16, 17, 14, 12, 13, 20, 22, 25);
int sum = 0;
System.out.print("Ages of the group are : "); for (int i = 0; i < 10 ; i++)
(
System.out.print(ages(i)+" "); sum += ages(i);
)
System.out.println("\n Average age of the group = " + (sum/10));
)
)
Вихід:
Для кожної петлі
Щоб знайти середній вік групи людей, які використовують цикл "для кожного":
Код
public class Main
(
public static void main(String() args) (
int ages() = (15, 18, 16, 17, 14, 12, 13, 20, 22, 25);
int sum = 0;
System.out.print("Ages of the group are : "); for (int x : ages)
(
System.out.print(x+" "); sum += x;
)
System.out.println("\n Average age of the group = " + (sum/10));
)
)
Вихід:
Вихід однаковий, використовуючи обидві петлі, як видно з наведених вище фігур.
Пройдіть цикл за допомогою заяви про перерву
Можна зменшити кількість ітерацій циклу для кожного за допомогою оператора break. Наприклад, якщо ми хочемо знайти суму лише перших 5 елементів, ми можемо використовувати оператор break наступним чином:
Код
public class Main
(
public static void main(String() args) (
int ages() = (15, 18, 16, 17, 14, 12, 13, 20, 22, 25);
int ctr = 0, sum = 0;
System.out.print("Ages of the group are : "); for (int x : ages)
(
System.out.print(x+" ");
)
for (int x : ages)
(
if (ctr == 5) break; sum += x;
ctr += 1;
)
System.out.println("\nSum of age of first 5 people of the group = " + sum);
)
)
Вихід:
У згаданому вище циклі для кожного циклу x є змінною ітерації, яка зберігає один елемент масиву за ітерацією, яка змінюється в наступній ітерації. У першій ітерації x зберігає перший елемент масиву та останній елемент масиву в останній ітерації. На відміну від циклу, де ми отримуємо доступ до елементів масиву за допомогою індексу, для кожного циклу використовується ітераційна змінна для доступу до елементів.
Необхідно бути обережним при використанні для кожного циклу, оскільки ітераційна змінна тимчасово зберігає значення елемента масиву, оскільки воно є лише для читання, і зміна його значення не змінює вихідний масив. Це суперечить циклу, коли зміна елемента змінює вихідний масив.
Розглянемо приклад, коли ми додаємо 5 до кожного елемента масиву. Ми можемо помітити різницю у виході в наступному прикладі коду:
Для петлі з різними умовами
Код
public class Main
(
public static void main(String() args) (
int ages() = (15, 18, 16, 17, 14, 12, 13, 20, 22, 25);
System.out.print("Elements of the array are : "); for (int i = 0; i < 10; i++)
(
System.out.print(ages(i)+" "); ages(i)+= 5;
)
System.out.print("\nNew elements of the array are : "); for (int i = 0; i < 10; i++)
(
System.out.print(ages(i)+" ");
)
)
)
Вихід:
Вихід для циклу, що показує оновлення вихідного масиву
Цикл форекс з різними умовами
Код
public class Main
(
public static void main(String() args) (
int ages() = (15, 18, 16, 17, 14, 12, 13, 20, 22, 25);
System.out.print("Elements of the array are : "); for (int x : ages)
(
System.out.print(x+" "); x += 5;
)
System.out.print("\nNew elements of the array are : "); for (int x : ages)
(
System.out.print(x+" ");
)
)
)
Вихід:
Висновок циклу для кожного циклу не показує оновлення вихідного масиву
Що слід пам’ятати про кожну петлю в Java
- For-Кожен цикл у Java використовується для повторення елементів масиву / колекції в послідовності.
- For-Кожен цикл у java використовує змінну ітерації для ітерації над колекцією чи масивом елементів.
- Зміна змінної ітерації не змінює оригінальний масив / колекцію, оскільки вона є лише для читання.
- Тип у циклі for для кожного повинен відповідати типу оригінальних елементів масиву / колекції.
- Цикл Foreach не потребує вказівки кількості ітерацій, оскільки він перебирає всі елементи колекції.
- Можна зупинити цикл для кожного циклу за допомогою оператора break.
Рекомендовані статті
Це посібник із циклу For-Every в Java. Тут ми обговорюємо цикл For-Every в java з його реалізацією коду різними способами, тобто з операцією break і з різними умовами. Ви також можете переглянути наступні статті, щоб дізнатися більше -
- Друкувати масив на Java
- Петлі в програмуванні Java
- Поки цикл у Java
- 3D-масиви на Java
- Інструменти розгортання Java
- 3D-масиви в C ++
- Для циклу в C
- Масиви в програмуванні Java