English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In this tutorial, we will learn another form of for loop in Java, that is, the enhanced for loop or for-each loop, through examples.
In Java, when dealing with arrays and collections, we can use the enhanced for loop. Also known as the for-each loop. This is because the loop traverses each element of the array or collection.
Prima di comprendere il ciclo for-each, assicurati di comprendere:
Perché è preferibile utilizzare il ciclo for-each rispetto al ciclo for quando si gestiscono array, vediamo l'esempio seguente.
Questo esempio mostra come utilizzare il ciclo for standard per esplorare gli elementi di un array.
class ForLoop { public static void main(String[] args) { char[] vowels = {'a', 'e', 'i', 'o', 'u'}; for(int i = 0; i < vowels.length; ++i) { System.out.println(vowels[i]); } } }
Output:
a e i o u
Ora eseguiremo la stessa operazione utilizzando il ciclo for-each.
class AssignmentOperator { public static void main(String[] args) { char[] vowels = {'a', 'e', 'i', 'o', 'u'}; // ciclo foreach for(char item: vowels) { System.out.println(item); } } }
Output:
a e i o u
Ecco che possiamo vedere che l'output dei due programmi è lo stesso.
Quando analizziamo attentamente questi due programmi, possiamo notare che il ciclo for-each è più facile da scrivere e rende il nostro codice più leggibile. Ecco perché è chiamato ciclo for-each.
Di conseguenza, si consiglia di utilizzare il ciclo for-each sul ciclo for standard il più possibile.
Ecco la sintassi del ciclo for-each:
for(data_type item : collections) { ... }
Ecco qui,
collection - L'insieme o l'array che si deve esplorare.
item - Progetto singolo dell'insieme.
Per ogni iterazione, eseguire un ciclo for-each, è così che funziona il ciclo for-each in Java.
Iterazione - Per scorrere ogni elemento in un insieme o array (collections)
salvare - Ogni elemento (item) nella variabile (item)
eripetereLa frase principale all'interno del ciclo.
Lasciate che vi spieghi chiaramente attraverso un esempio.
Il seguente programma calcola la somma di tutti gli elementi di un array di interi.
class EnhancedForLoop { public static void main(String[] args) { int[] numbers = {3, 4, 5, -5, 0, 12}; int sum = 0; per (int number: numbers) { somma += number; } System.out.println("Somma = " + somma); } }
Output:
Somma = 19
Nel programma sopra, l'esecuzione del ciclo for-each è la seguente:
Iterazione | Valore |
---|---|
1 | Quando number = 3, somma = 0 + 3 = 3 |
2 | Quando number = 4, somma = 3 + 4 = 7 |
3 | Quando number = 5, somma = 7 + 5 = 12 |
4 | Quando number = -5, somma = 12 + (-5) = 7 |
5 | Quando number = 0, somma = 7 + 0 = 7 |
6 | Quando number = 12, somma = 7 + 12 = 19 |
Puoi vedere il ciclo for-each in ogni iterazione
Esegui una scansione di ciascun elemento dell'array numbers
Memorizza nel numero variabile
E esegui l'oggetto principale, aggiungi il numero alla variabile somma e infine ottieni il totale (somma)