ForEach - 420111aut25/cours420111 GitHub Wiki
for-each
en Java
🔁 La boucle La boucle for-each
(ou boucle améliorée for
) permet de parcourir facilement les éléments d’un tableau ou d’une collection, sans se soucier des indices.
Elle est plus lisible et plus sûre que la boucle for
classique quand tu n’as pas besoin de manipuler les indices manuellement.
for-each
🧱 Structure d’une boucle for (Type element : collection) {
// instructions à exécuter pour chaque élément
}
Élément | Rôle |
---|---|
Type |
Le type des éléments (ex : int , String ) |
element |
Une variable temporaire pour chaque valeur |
collection |
Un tableau (array ) ou une collection (List , etc.) |
🔂 Exemple simple avec un tableau
int[] notes = {12, 15, 8, 17};
for (int note : notes) {
System.out.println("Note : " + note);
}
🔎 Ce code affiche :
Note : 12
Note : 15
Note : 8
Note : 17
💡 À chaque tour, la variable note
prend la valeur d’un élément du tableau, dans l’ordre.
🧑🏫 Exemple avec des chaînes de caractères
String[] prenoms = {"Alice", "Bob", "Claire"};
for (String nom : prenoms) {
System.out.println("Bonjour " + nom + " !");
}
for-each
?
🎯 Quand utiliser Utilise for-each
quand :
- Tu veux parcourir tous les éléments d’un tableau ou d’une liste
- Tu n’as pas besoin de connaître l’indice actuel
- Tu veux du code plus clair et moins sujet aux erreurs
⚠️ Limitations
- Tu ne peux pas modifier les éléments d’un tableau directement avec
for-each
. - Tu n’as pas accès à l’indice (
i
) de l’élément courant. - Pas adapté si tu as besoin de parcourir partiellement une structure ou de sauter des éléments.
for
classique
🔁 Comparaison avec la boucle // Boucle for classique
for (int i = 0; i < notes.length; i++) {
System.out.println(notes[i]);
}
// Boucle for-each
for (int note : notes) {
System.out.println(note);
}
✅ Même résultat, mais code plus lisible avec for-each (s’il n’y a pas besoin de i
).
🧠 À retenir
- La boucle
for-each
est idéale pour lire les éléments d’un tableau ou d’une collection. - Elle est plus concise et plus sûre qu’une boucle
for
classique. - À éviter si tu as besoin de l’indice ou de modifier les éléments.
🔹 Exercice 1 : Afficher les éléments d’un tableau
Déclare un tableau fruits
contenant les éléments suivants :
"Pomme"
, "Banane"
, "Cerise"
, "Date"
.
Utilise une boucle for-each
pour afficher chaque fruit.
public class Exo1 {
public static void main(String[] args) {
// Déclaration et initialisation du tableau
// Parcours avec for-each et affichage
}
}
Sortie attendue
Pomme
Banane
Cerise
Date
🔹 Exercice 2 : Somme des valeurs d’un tableau
Déclare un tableau nombres
avec les valeurs :
5, 8, 12, 20
.
Calcule la somme des éléments en utilisant une boucle for-each
puis affiche le résultat.
public class Exo2 {
public static void main(String[] args) {
// Initialisation du tableau
// Calcul de la somme avec for-each
// Affichage de la somme
}
}
Sortie attendue
Somme : 45
🔹 Exercice 3 : Compter les mots
Déclare un tableau mots
contenant :
"chat"
, "chien"
, "oiseau"
, "poisson"
, "chat"
.
Utilise une boucle for-each
pour compter le nombre de fois que le mot "chat"
apparaît, puis affiche ce nombre.
public class Exo3 {
public static void main(String[] args) {
// Initialisation du tableau
// Compteur et boucle for-each pour compter "chat"
// Affichage du résultat
}
}
Sortie attendue
Le mot "chat" apparaît 2 fois.
🔹 Exercice 4 : Afficher un tableau
Utilise une boucle for-each
pour afficher le tableau suivant : {43,256,3,796,35,67}
public class Exo3 {
public static void main(String[] args) {
// Compte à rebours
}
}
Sortie attendue
43
256
3
796
35
67
🔹 Exercice 5 : Afficher un tableau sexy
Utilise une boucle for-each
pour afficher le tableau suivant : {43,256,3,796,35,67}
public class Exo3 {
public static void main(String[] args) {
// Compte à rebours
}
}
Sortie attendue
[43,256,3,796,35,67]