que signifie "faire" faire ici? (Java)


J'ai vu ce morceau de code sur les interents quelque part. Je me demande à quoi sert le do.

public class LoopControl {
    public static void main(String[] args) {
        int count = 0;

        do {
            if (count % 2 == 0) {
                for (int j = 0; j < count; j++) {
                    System.out.print(j+1);

                    if (j < count-1) {
                        System.out.print(", ");
                    }
                }

                System.out.println();
            }

            count++;
        }
        while (count <= 5);
    }
}

Par lequel je veux dire que signifie exactement do? Quelle est sa fonction? Toute autre information serait également utile.

Author: L0j1k, 2010-04-18

5 answers

C'est une boucle do-while. Il fera donc tout dans le bloc suivant alors que count est inférieur ou égal à 5. La différence entre cela et une boucle while normale est que la condition est évaluée à la fin de la boucle et non au début. La boucle est donc garantie de s'exécuter au moins une fois.

Soleil tutoriel sur while et do-while.

Oh, et dans ce cas, il imprimera:

1, 2
1, 2, 3, 4

Edit: juste pour que vous sachiez qu'il y aura aussi une nouvelle ligne au début, mais le le formatage ne semble pas me permettre de le montrer.

 6
Author: DaveJohnston, 2010-04-17 21:35:26

Il est similaire à une boucle while, à la seule différence qu'il est exécuté au moins une fois.

Pourquoi? Parce que la condition whilen'est évaluée qu'après le bloc do.

Pourquoi est-ce utile? Considérons, par exemple, un menu de jeu. Tout d'abord, vous voulez afficher le menu (le bloc do), puis vous voulez continuer à afficher le menu jusqu'à ce que quelqu'un choisisse l'option de sortie, qui serait la condition d'arrêt while.

 3
Author: João Silva, 2010-04-17 21:23:54

C'est une boucle while qui est exécutée au moins une fois.

Modifier: Le tout et, tandis que les États

 2
Author: kloffy, 2010-04-17 21:20:25

do { ... } while(CONDITION) s'assure que le bloc à l'intérieur ne sera exécuté au moins une fois, même si la condition n'est pas satisfaite, d'autre part, un while tresorerie " ne s'exécutera jamais si la condition n'est pas remplie

 1
Author: Hannoun Yassir, 2010-04-17 21:25:00

Ça va avec le temps. faire { ... } while() est une boucle qui est la condition à la fin.

 -1
Author: Serafeim, 2010-04-17 21:20:24