У цьому посібнику ми дізнаємося про Java для кожного циклу та його різницю з циклом for за допомогою прикладів.
У Java цикл for-each використовується для ітерації елементів масивів та колекцій (наприклад, ArrayList). Він також відомий як розширений цикл for.
для кожної петлі Sytnax
Синтаксис Java для кожного циклу такий:
for(dataType item : array) (… )
Ось,
- масив - масив або колекція
- item - кожному елементу масиву / колекції присвоюється ця змінна
- dataType - тип даних масиву / колекції
Приклад 1: Друкувати елементи масиву
// print array elements class Main ( public static void main(String() args) ( // create an array int() numbers = (3, 9, 5, -5); // for each loop for (int number: numbers) ( System.out.println(number); ) ) )
Вихідні дані
3 9 5 -5
Тут ми використали цикл для кожного для друку кожного елемента масиву чисел по одному.
- У першій ітерації елемент буде 3.
- У другій ітерації пункт буде 9.
- У третій ітерації елемент буде 5.
- У четвертій ітерації елемент буде -5.
Приклад 2: Сума елементів масиву
// Calculate the sum of all elements of an array class Main ( public static void main(String() args) ( // an array of numbers int() numbers = (3, 4, 5, -5, 0, 12); int sum = 0; // iterating through each element of the array for (int number: numbers) ( sum += number; ) System.out.println("Sum = " + sum); ) )
Вихід :
Сума = 19
У наведеній вище програмі виконання for each
циклу виглядає так:
Ітерація | Змінні |
---|---|
1 | число = 3 сума = 0 + 3 = 3 |
2 | число = 4 сума = 3 + 4 = 7 |
3 | число = 5 сума = 7 + 5 = 12 |
4 | число = -5 сума = 12 + (-5) = 7 |
5 | число = 0 сума = 7 + 0 = 7 |
6 | число = 12 сума = 7 + 12 = 19 |
Як бачимо, ми додали кожен елемент масиву чисел до змінної суми на кожній ітерації циклу.
для циклу Vs для кожного циклу
Давайте подивимося, чим for-each
цикл відрізняється від звичайного циклу Java for.
1. Використання циклу for
class Main ( public static void main(String() args) ( char() vowels = ('a', 'e', 'i', 'o', 'u'); // iterating through an array using a for loop for (int i = 0; i < vowels.length; ++ i) ( System.out.println(vowels(i)); ) ) )
Вихід :
aeiou
2. Використання для кожного циклу
class Main ( public static void main(String() args) ( char() vowels = ('a', 'e', 'i', 'o', 'u'); // iterating through an array using the for-each loop for (char item: vowels) ( System.out.println(item); ) ) )
Вихід :
aeiou
Тут вихід обох програм однаковий. Однак цикл for-each легше написати і зрозуміти.
Ось чому при роботі з масивами та колекціями для кожного циклу перевага надається циклу for .