b. Les Boucles en Java

Les boucles en Java permettent d'exécuter un bloc de code plusieurs fois tant qu'une condition est remplie, ou de répéter une série d'instructions sur une séquence d'éléments.

Il existe trois types principaux de boucles en Java : for, while, et do-while. Chaque type a des caractéristiques spécifiques qui s'adaptent à différents besoins de répétition.


La boucle for


La boucle for est utilisée lorsque vous savez à l'avance combien de fois vous devez répéter un bloc de code. Elle est souvent utilisée pour parcourir des tableaux ou des collections.

Syntaxe :

for (initialisation; condition; incrémentation/décrémentation) {
    // Bloc de code à exécuter
}


Explication :

  • Initialisation : une variable est initialisée une seule fois au début de la boucle.
  • Condition : la boucle continue de s'exécuter tant que cette condition est vraie.
  • Incrémentation/Décrémentation : à la fin de chaque itération ou répétition, la variable est mise à jour.


Exemple :

public class Boucle {
    public static void main(String[] args) {
        for (int i = 0; i < 5; i++) {
            System.out.println("i = " + i);
        }
    }
    
}

Dans cet exemple, la boucle commence avec i = 0 et continue tant que i < 5. À chaque itération, i est incrémenté de 1.


La boucle while


La boucle while est utilisée lorsque vous ne savez pas à l'avance combien de fois la boucle va s'exécuter, mais vous avez une condition qui doit rester vraie pour que la boucle continue.

Syntaxe :

while (condition) {
    // Bloc de code à exécuter
}


Exemple :

public class Boucle {
    public static void main(String[] args) {
        int compteur = 0;       
        while (compteur < 5) {
            System.out.println("Compteur = " + compteur);
            compteur++;
        }
    }
}

Dans cet exemple, la boucle while continue d'exécuter le code tant que la variable compteur est inférieure à 5. À chaque itération, la valeur de compteur est incrémentée de 1.


La boucle do-while

La boucle do-while est similaire à la boucle while, sauf que le bloc de code est exécuté au moins une fois, même si la condition est fausse dès le début. La condition est vérifiée après chaque itération.

Syntaxe :

do {    
  // Bloc de code à exécuter

} while (condition);


public class Boucle {
    public static void main(String[] args) {
        int compteur = 0;
        
        do {
            System.out.println("Compteur = " + compteur);
            compteur++;
        } while (compteur < 5);
    }
}


Ici, même si la condition compteur < 5 est fausse dès le départ, la boucle s'exécutera au moins une fois. La différence principale avec while est que la condition est vérifiée après l'exécution du bloc de code.


La boucle for-each

La boucle for-each est une version simplifiée de la boucle for, souvent utilisée pour parcourir des collections comme des tableaux ou des listes sans avoir besoin de gérer l'indice ou le compteur. Elle est très utile pour traverser des éléments d'une collection.

Syntaxe :

for (type element : collection) {
    // Bloc de code à exécuter
}


Exemple :

public class ExempleForEach {
    public static void main(String[] args) {
        int[] nombres = {1, 2, 3, 4, 5};
        
        for (int nombre : nombres) {
            System.out.println("Nombre = " + nombre);
        }
    }
}

Dans cet exemple, la boucle for-each parcourt chaque élément du tableau nombres et affiche sa valeur.


Utilisation de break et continue

  • break : Cette instruction permet de sortir complètement d'une boucle avant que la condition ne soit remplie.
  • continue : Cette instruction permet de sauter à l'itération suivante sans exécuter le reste du code dans le bloc de la boucle.

Exemple avec break :

public class ExempleBreak {
    public static void main(String[] args) {
        for (int i = 0; i < 10; i++) {
            if (i == 5) {
                break// Sortir de la boucle quand i est égal à 5
            }
            System.out.println("i = " + i);
        }
    }
}


Exemple avec continue :

public class ExempleContinue {
    public static void main(String[] args) {
        for (int i = 0; i < 5; i++) {
            if (i == 2) {
                continue// Sauter cette itération quand i est égal à 2
            }
            System.out.println("i = " + i);
        }
    }
}



Résumé des boucles :

  • for : Utilisée pour un nombre défini d'itérations.
  • while : Utilisée lorsque vous ne savez pas à l'avance combien de fois la boucle doit s'exécuter.
  • do-while : Similaire à while, mais s'exécute au moins une fois.
  • for-each : Utilisée pour parcourir facilement des collections comme des tableaux et des listes.
  • break : Sort de la boucle immédiatement.
  • continue : Passe à l'itération suivante sans terminer l'itération en cours.

Les boucles sont essentielles pour automatiser des tâches répétitives dans un programme et rendre le code plus efficace et plus court.