English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

教程基础Java

Java flow control

Java array

Java object-oriented (I)

Java object-oriented (II)

Java object-oriented (III)

Gestione delle eccezioni Java

Java List

Java Queue (queue)

Java Map collection

Java Set collection

Java input/output (I/O)

Java Reader/Writer

Java other topics

Java for-each loop (traversal loop)

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:

Differenze tra ciclo for e ciclo for-each

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.

Ciclo for-each Java

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.

Come funziona il ciclo for-each?

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.

Esempio: ciclo for-each

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:

IterazioneValore
1Quando number = 3, somma = 0 + 3 = 3
2Quando number = 4, somma = 3 + 4 = 7
3Quando number = 5, somma = 7 + 5 = 12
4Quando number = -5, somma = 12 + (-5) = 7
5Quando number = 0, somma = 7 + 0 = 7
6Quando 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)