5

私はどこかのinterentsでこのコードのビットを見ました。何の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);
    }
}

つまり、正確にはdoどういう意味ですか?その機能は何ですか?他の情報も役に立ちます。

4

5 に答える 5

6

これはdo-whileループです。したがって、カウントが5以下の場合、次のブロックのすべてを実行します。これと通常のwhileループの違いは、条件がループの開始ではなく終了で評価されることです。したがって、ループは少なくとも1回は実行されることが保証されています。

whileとdo-whileに関するSunチュートリアル。

ああ、この場合は次のように出力されます。

1, 2
1, 2, 3, 4

編集:ちょうどあなたが最初に新しい行もあることを知っているように、しかしフォーマットは私にそれを見せさせないようです。

于 2010-04-17T21:22:20.683 に答える
3

これはループに似ていwhileますが、唯一の違いは、少なくとも1回実行されることです。

なんで?条件はブロックのwhileでのみ評価されるためです。do

なぜそれが役立つのですか?たとえば、ゲームメニューについて考えてみます。最初にメニュー(doブロック)を表示し、次に、誰かが終了オプションを選択するまでメニューを表示し続けます。これがwhile停止条件になります。

于 2010-04-17T21:23:54.553 に答える
2

少なくとも1回は実行されるwhileループです。

編集: whileおよびdo-whileステートメント

于 2010-04-17T21:20:25.193 に答える
1

do { ... } while(CONDITION)条件が満たされていない場合でも、do内のブロックが少なくとも1回実行されることを保証します。一方、条件が満たされない場合、whileステートメントは実行されません。

于 2010-04-17T21:25:00.307 に答える
-1

それはしばらく続きます。do { ... } while() は条件を最後に持つループです。

于 2010-04-17T21:20:24.510 に答える