În acest tutorial, vom afla despre Java pentru fiecare buclă și diferența acesteia cu bucla for cu ajutorul exemplelor.
În Java, bucla pentru fiecare este utilizată pentru a itera prin elemente de matrice și colecții (cum ar fi ArrayList). Este, de asemenea, cunoscut sub numele de bucla îmbunătățită.
pentru fiecare buclă Sytnax
Sintaxa Java pentru fiecare buclă este:
for(dataType item : array) (… )
Aici,
- matrice - o matrice sau o colecție
- item - fiecare articol din matrice / colecție este atribuit acestei variabile
- dataType - tipul de date al matricei / colecției
Exemplul 1: Print Array Elements
// 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); ) ) )
Ieșire
3 9 5 -5
Aici, am folosit bucla pentru fiecare pentru a imprima fiecare câte unul dintre elementele matricei de numere.
- În prima iterație, elementul va fi 3.
- În a doua iterație, elementul va fi 9.
- În a treia iterație, elementul va fi 5.
- În a patra iterație, elementul va fi -5.
Exemplul 2: Suma elementelor matrice
// 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); ) )
Ieșire :
Suma = 19
În programul de mai sus, execuția for each
buclei arată ca:
Repetare | Variabile |
---|---|
1 | număr = 3 sumă = 0 + 3 = 3 |
2 | număr = 4 sumă = 3 + 4 = 7 |
3 | număr = 5 sumă = 7 + 5 = 12 |
4 | număr = -5 sumă = 12 + (-5) = 7 |
5 | număr = 0 sumă = 7 + 0 = 7 |
6 | număr = 12 sumă = 7 + 12 = 19 |
După cum putem vedea, am adăugat fiecare element al matricei de numere la variabila sumă din fiecare iterație a buclei.
pentru bucla Vs pentru fiecare buclă
Să vedem cum for-each
diferă o buclă de o buclă Java obișnuită.
1. Folosind bucla
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)); ) ) )
Ieșire :
aeiou
2. Utilizarea pentru fiecare buclă
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); ) ) )
Ieșire :
aeiou
Aici, ieșirea ambelor programe este aceeași. Cu toate acestea, bucla pentru fiecare este mai ușor de scris și de înțeles.
Acesta este motivul pentru care bucla pentru fiecare este preferată față de bucla for atunci când se lucrează cu tablouri și colecții.