La boucle for-each en Java vous permet d’exécuter des arrays ou des col­lec­tions plus ra­pi­de­ment et de manière plus sûre, d’éviter les erreurs et d’améliorer la li­si­bi­lité du code. Dans ce tutoriel, nous vous ex­pli­quons en détail la structure et les avantages de la méthode for-each et vous pré­sen­tons comment utiliser la boucle dans votre code.

À quoi sert la boucle for-each Java ?

La boucle for-each est utilisée dans de nombreux scénarios dans lesquels les dé­ve­lop­peurs doivent tra­vail­ler avec des arrays. Une ap­pli­ca­tion fréquente est par exemple l’affichage ou la recherche d’éléments spé­ci­fiques dans un array. La boucle for-each peut également être utilisée pour exécuter des éléments dans une liste appliquée comme un ArrayList. À chaque itération, vous pouvez réaliser des ma­ni­pu­la­tions au­to­ma­tiques à l’aide des opé­ra­teurs Java courants, sans devoir écrire une ins­truc­tion distincte pour chaque élément.

Si l’on compare la méthode for-each en Java avec la méthode de la boucle for dans Java, avec la boucle for-each, il n’est pas né­ces­saire de prendre en compte la position ou la taille de l’array. Cela permet d’éviter qu’une position ne se trouve en dehors de la plage ap­pli­cable. La boucle for-each utilise en interne un itérateur afin d’appeler chaque élément de l’array ou de la liste l’un après l’autre. L’itérateur compte au­to­ma­ti­que­ment dans l’array ou la liste et met fin à la boucle lorsque tous les éléments ont été exécutés.

Toutefois, si vous devez accéder à la position, par exemple pour traiter l’élément suivant ou précédent, il est po­ten­tiel­le­ment pré­fé­rable de recourir à la boucle for ou à la boucle while.

Syntaxe de la boucle for-each Java

La syntaxe de base d’une boucle for-each en Java se présente de la manière suivante :

for (type item : array | collection) {
// bloc de code
}
Java
  • « array/col­lec­tion » : nom de l’array ou de la col­lec­tion
  • « item » : chaque élément de l’array ou de la col­lec­tion est assigné à cette variable.
  • « type » : type de données de l’array ou de la col­lec­tion

Au sein de la boucle, le bloc de code est exécuté pour chaque itération.

Exemples d’uti­li­sa­tion de la boucle for-each Java

Nous ex­pli­quons ci-après l’uti­li­sa­tion de la méthode for-each à l’aide des af­fi­chages à l’écran et d’opé­ra­tions arith­mé­tiques.

Afficher des éléments à l’écran

Grâce à la boucle for-each, vous pouvez afficher à l’écran chaque élément d’un array ou d’une col­lec­tion.

class Main {
    public static void main(String[] args) {
        // array
        String[] names = {"Sophie", "Tim", "Anna", "John", "Melissa"};
        // pour chaque boucle
        for (String name: names) {
            System.out.println(name);
        }
    }
}
Java

Le résultat affiché à l’écran est le suivant :

Sophie
Tim
Anna
John
Melissa
Java

De la même manière, il est possible de présenter les éléments d’une liste. Le code source de la boucle ne change pas.

import java.util.ArrayList;
class Main {
    public static void main(String[] args) {
        // liste
        ArrayList<String> names = new ArrayList<String>();
        names.add( "Sophie" );
        names.add( "Tim" );
        names.add( "Anna" );
        names.add( "John" );
        names.add( "Melissa" );
        // pour chaque boucle
        for(String name: names){
            System.out.println(name);
        }
    }
}
Java

Une chaîne est générée pour chaque nom de la liste :

Sophie
Tim
Anna
John
Melissa
Java

Calculer la somme des éléments d’un array ou d’une col­lec­tion

Grâce à la méthode for-each en Java, il est simple et rapide de réaliser des opé­ra­tions arith­mé­tiques, comme l’addition d’éléments d’un array ou d’une liste. Dans le bloc de code, les opé­ra­teurs sont associés aux variables servant de ca­rac­tères gé­né­riques pour chaque élément.

class Main {
    public static void main(String[] args) {
        // array
        int[] numbers = {10, 34, 7, 19, -28};
        int sum = 0;
        // addition
        for (int number: numbers) {
            sum += number;
        }
        System.out.println("Result = " + sum);
    }
}
Java

Les chiffres de l’array sont tour à tour ad­di­tion­nés aux variables « sum » qui ont été préa­la­ble­ment déclarées en dehors de la boucle. Le résultat est le suivant :

Result = 42
Java

5f908a8e787a8bb2d3eedc51d5a90bd4

Aller au menu principal