Boucle For-Each Java : Simplifier l'Itération sur les Tableaux Sans Compteurs
Lorsque vous travaillez avec des collections en Java, la boucle for-each offre une alternative concise et lisible à la boucle for indexée traditionnelle. En éliminant la gestion manuelle des indices, elle réduit le code boilerplate et les erreurs potentielles de décalage d'un (off-by-one).
Syntaxe
for (TypeDonnée élément : collection) {
// Traiter l'élément
}
Exemple Pratique
Ci-dessous, nous itérons sur un tableau String en utilisant à la fois la boucle for conventionnelle et la boucle for-each pour souligner les différences.
Déclaration du tableau :
String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};
Boucle for Traditionnelle
for (int i = 0; i < arrData.length; i++) {
System.out.println(arrData[i]);
}
Boucle For-Each
for (String élément : arrData) {
System.out.println(élément);
}
Remarquez que la version for-each élimine la variable d'index et rend l'intention de « traiter chaque élément » cristalline.
Points Clés à Retenir
- Le type déclaré dans la boucle doit correspondre au type d'élément du tableau ou de la collection.
- Les boucles for-each sont idéales pour la lecture seule ; elles ne doivent pas être utilisées quand vous devez modifier la structure de la collection (ex. : supprimer des éléments pendant l'itération).
- Les différences de performance sont négligeables pour la plupart des cas d'utilisation ; la lisibilité doit guider le choix.
Exemple de Classe Complète
class UtilisationForEach {
public static void main(String[] args) {
String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};
System.out.println("Utilisation de la boucle For conventionnelle :");
for (int i = 0; i < arrData.length; i++) {
System.out.println(arrData[i]);
}
System.out.println("\nUtilisation de la boucle Foreach :");
for (String élément : arrData) {
System.out.println(élément);
}
}
}

Sortie
Utilisation de la boucle For conventionnelle : Alpha Beta Gamma Delta Sigma Utilisation de la boucle Foreach : Alpha Beta Gamma Delta Sigma
Les deux boucles produisent des résultats identiques, mais la boucle for-each atteint le même résultat avec moins de code et moins de risques d'erreurs.
Java
- Maîtriser la boucle for améliorée en Java : Syntaxe, exemples et bonnes pratiques
- Techniques de copie de tableaux en Java : Guide complet
- Créer un tableau d'objets en Java : Guide étape par étape
- Comprendre Java String.charAt() : Syntaxe, type de retour, exceptions et exemple pratique
- Programme Java pour identifier les nombres d'Armstrong avec une boucle for
- Vérificateur de nombre palindrome en Java : algorithmes avec boucles while et for
- Maîtriser le tri à bulles en Java : exemple clair et explication pas à pas
- Tri par sélection en Java : exemple pas à pas et code complet
- Java 10 : Interface Ramasse-Miettes (GC) et Full GC parallèle pour G1