Accéder au contenu principal
Documents
Tableaux JavaProgrammation orientée objet en JavaTraitement des fichiers en JavaIntroduction To JavaLes bases du langage JavaMots-clés Java

Mot-clé while en Java

Le mot-clé while en Java est utilisé pour créer une boucle qui exécute un bloc de code tant qu'une condition spécifiée est vraie. Il s'agit d'une instruction de flux de contrôle qui permet l'exécution répétée d'un bloc de code sur la base d'une condition booléenne.

Utilisation

La boucle while est utile lorsque le nombre d'itérations n'est pas connu à l'avance et qu'il dépend d'une condition évaluée avant chaque itération.

Syntax

while (condition) {
    // Code to be executed
}
  • condition: Une expression booléenne qui est évaluée avant chaque itération. Si la condition est vraie, la boucle continue ; si elle est fausse, la boucle se termine.

Exemples

Exemple 1 : De base while Boucle

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

Dans cet exemple, la variable i est initialisée à 0. La boucle while continue à s'exécuter tant que i est inférieur à 5. La valeur de i est imprimée et incrémentée à chaque itération.

Exemple 2 : Lecture de l'entrée jusqu'à ce que la condition soit remplie

import java.util.Scanner;

public class WhileInputExample {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String input = "";
        while (!input.equals("exit")) {
            System.out.println("Enter text (type 'exit' to quit): ");
            input = scanner.nextLine();
        }
        scanner.close();
    }
}

Cet exemple illustre l'utilisation d'une boucle while pour lire les données saisies par l'utilisateur jusqu'à ce qu'il tape "exit". La boucle continue d'inviter l'utilisateur à entrer des données jusqu'à ce que la condition !input.equals("exit") devienne fausse.

Exemple 3 : Boucle infinie

public class InfiniteWhileLoop {
    public static void main(String[] args) {
        while (true) {
            System.out.println("This will print forever");
        }
    }
}

Dans cet exemple, la condition de la boucle while est true, ce qui signifie que la boucle s'exécutera indéfiniment. C'est ce que l'on appelle une boucle infinie et il convient de l'utiliser avec prudence.

Conseils et bonnes pratiques

  • Assurer la résiliation: Veillez toujours à ce que la boucle while comporte une condition qui finira par devenir fausse afin d'éviter les boucles infinies.
    int count = 0;
    while (count < 10) {
        // Ensure count is incremented
        count++;
    }
  • Évitez les conditions complexes: Veillez à ce que la condition de la boucle soit simple et facile à comprendre. Des conditions complexes peuvent rendre le code difficile à lire et à maintenir.
    while (isValid && count < max) {
        // Simple and clear condition
    }
  • Utilisez des instructions de rupture: Si nécessaire, utilisez les instructions break pour sortir de la boucle en fonction de conditions supplémentaires.
    while (true) {
        if (someCondition) {
            break; // Exit loop
        }
    }
  • Gestion des ressources: Fermez toujours les ressources telles que les scanners ou les lecteurs de fichiers à l'intérieur de la boucle pour éviter les fuites de ressources.
    Scanner scanner = new Scanner(System.in);
    while (condition) {
        // Use scanner
    }
    scanner.close();
  • Débogage: Si vous rencontrez une boucle infinie pendant le débogage, utilisez des instructions d'impression ou un débogueur pour comprendre pourquoi la condition ne devient jamais fausse.
  • Visualisation du contrôle des flux: Il est plus facile de comprendre le contrôle du flux d'une boucle while à l'aide d'un organigramme. Cela peut aider à visualiser les étapes et les conditions impliquées dans l'exécution de la boucle.

Apprendre l'essentiel de Java

Développez vos compétences en Java à partir de la base et maîtrisez les concepts de programmation.
Commencez à apprendre gratuitement