📝 Ce que vous apprendrez

  • Structure de base de la boucle "for" (pour)
  • Boucle avec des compteurs
  • Utilisation de break et de continue
  • Boucles imbriquées
  • Boucle "for-each" améliorée

🔧 Syntaxe de base

for (initialization; condition; update) {
    // code to run each time
}

Chaque partie de la boucle joue un rôle :

  • Initialisation : Définir une valeur de départ (s'exécute une fois)
  • Condition : La boucle continue si vrai
  • Mise à jour : Modifie la variable de boucle (s'exécute après chaque boucle)

✅ Exemple : Compter jusqu'à 5

for (int i = 1; i <= 5; i++) {
    System.out.println("i = " + i);
}

📤 Sortie :

i = 1
i = 2
i = 3
i = 4
i = 5

🔁 Boucle inversée

for (int i = 5; i >= 1; i--) {
    System.out.println(i);
}

➡️ Boucle en arrière de 5 à 1.

➿ Boucles For imbriquées

Boucles à l'intérieur de boucles - couramment utilisées pour les grilles, les tableaux ou les motifs.

for (int i = 1; i <= 3; i++) {
    for (int j = 1; j <= 2; j++) {
        System.out.println("i=" + i + ", j=" + j);
    }
}

🛑 Utilisation de break et continue.

break - quitter la boucle plus tôt que prévu :

for (int i = 1; i <= 5; i++) {
    if (i == 3) break;
    System.out.println(i);
}

continue - sauter l'itération en cours :

for (int i = 1; i <= 5; i++) {
    if (i == 3) continue;
    System.out.println(i);
}

🔄 Boucle For améliorée (For-Each)

Meilleur pour les tableaux et les collections :

int[] numbers = {10, 20, 30};

for (int num : numbers) {
    System.out.println(num);
}

Aucun suivi d'index n'est nécessaire - il suffit de parcourir chaque élément en boucle.

⚠️ Pièges courants

  • Erreurs de décalage (i <= 5 vs i < 5)
  • Boucles infinies si la mise à jour est manquante ou erronée
  • Modifier une collection en la parcourant (avec for-each)

📘 Recap

  • Les boucles for sont plus efficaces lorsque l'on sait combien de fois il faut itérer
  • Structure intégrée : init → condition → mise à jour
  • for-each est propre pour les tableaux et les listes
  • Utiliser break et continue pour contrôler le flux.