2016/02/26 公開
・do~while文
do~while文は、処理を繰り返すために使用します。継続条件式で指定した条件を満たしている間、処理が繰り返されます。同じように繰り返しを行うfor文がありますが、for文は主に繰り返す回数が決まっているときに使用し、回数が分からない場合はdo~while文またはwhile文を使用します。その一般的な書き方について説明します。
以下は、{ ~ }の波括弧で囲まれている範囲の全ての処理文を繰り返し実行する書き方です。
do { 処理文1 処理文2 : while ( 継続条件式 );
ここからは、do~while文を使用したサンプルのJavaソースコードで使い方を解説していきます。以下がそのソースコードで、処理を10回繰り返すようにしたものです。
DoWhileSample1.java ← クリックしてダウンロードページに移動001: public class DoWhileSample1 { 002: public static void main( String[] args ) { 003: // 変数の宣言 004: int i; 005: 006: // 10回の繰り返し 007: i = 1; 008: do { 009: System.out.println( "繰り返し回数:" + i ); 010: ++ i; 011: } while ( 10 >= i ); 012: } 013: }
出力結果
繰り返し回数:1 繰り返し回数:2 繰り返し回数:3 繰り返し回数:4 繰り返し回数:5 繰り返し回数:6 繰り返し回数:7 繰り返し回数:8 繰り返し回数:9 繰り返し回数:10
003: // 変数の宣言 004: int i;
繰り返しに使う変数を宣言しています。
006: // 10回の繰り返し 007: i = 1; 008: do { 009: System.out.println( "繰り返し回数:" + i ); 010: ++ i; 011: } while ( 10 >= i );
System.out.println( "繰り返し回数:" + i );は処理文で、繰り返し処理される文です。この例では、処理文は2行ですが、{ ~ }の波括弧で囲まれている範囲の処理文を繰り返し実行することができます。
while文との違いは継続条件の判定のタイミングです。while文は先頭で判定を行い、do~while文は最後に行います。よって、do~while文の場合は、必ず1回は記述した処理が実行されます。以下がそれを比較するJavaソースコードです。
DoWhileSample2.java ← クリックしてダウンロードページに移動001: public class DoWhileSample2 { 002: public static void main( String[] args ) { 003: // 継続条件 004: boolean f = false; 005: 006: // do~while 007: int counter1 = 0; 008: do { 009: ++ counter1; 010: } while ( f ); // f=false 011: System.out.println( "カウンタ(do~while)=" + counter1 ); 012: 013: // while 014: int counter2 = 0; 015: while( f ) { // f=false 016: ++ counter2; 017: } 018: System.out.println( "カウンタ(while)=" + counter2 ); 019: } 020: }
出力結果
カウンタ(do~while)=1 カウンタ(while)=0
do~while文のカウンタ(do~while)は1で、while文のカウンタ(while)は0となります。do~while文とwhile文の継続条件をどちらもfalseにしていますが、do~while文の方は、処理の後に継続するかの判定が行われるため、カウンターに1が足されていることがわかります。
■関連コンテンツ
Javaの変数(他13件) | Javaで扱う変数について解説 |
break文 | ループから処理から抜け出る |
continue文 | ループの先頭に戻る |
for文繰り返し処理に使用するfor文をJavaのソースコードを使って説明しています。 |
|
while文繰り返し処理に使用するwhile文について解説 |
|
if文条件による処理の分岐に使用するif文について解説 |
|
多重ループfor文などのループの中にループをいれたプログラムの構造、多重ループについて説明しています。 |
■新着情報
2022.07.07 | 外部プログラムの実行 | exeファイル実行 |
2022.07.06 | 完全数 | 6=1+2+3 |
■広告