do while文の書き方

前回はwhile文を使用した繰り返し処理を説明しましたが、while文で継続条件に関わらず必ず1回は処理が実行される書き方があります。それが「do while」文です。

do while文の書き方 目次

  1. do while文とは
  2. do while文の書き方
  3. do while文のフローチャート
  4. 継続条件がfalseになる場合

1.do while文とは

while文では継続条件を自分で指定しますので、場合によってはそもそも継続条件を満たしておらず、1回も実行されずにループを終了することがあります。しかし、初めの1回だけは必ず処理を実行したいような場合もあります。そういう時に使用するのが「do while」文です。

while文では、ループ処理の開始時に条件判定をしてから処理実行(前判定と言います)となっていたところ、do while文では、先に処理を実行してから条件判定をする(後判定と言います)、という違いがあります。

2.do while文の書き方

do while文の書き方は次の様になります。

do {
  実行したい処理
} while( 継続条件 );

while文と違い、一行目は「do」だけになります。これは単純に処理を実行する!と解釈して結構です。プログラムは上から下に進んでいきますので、必ず2行目の実行したい処理が実行され、最後の3行目のところで継続条件の判定になります。ここで必ずセミコロンを入れます。

この継続条件でtrueになった場合は、ループして再度実行したい処理に移り、falseだった場合はそのままループを終了します。

package pac01;

public class HelloWorld {
	public static void main(String[] args) {
		int i = 0;
		
		// do while文
		do {
		
			// ここは必ず実行される
			System.out.println("iは" + (i + 1) + "回目の実行です。");
			
			// カウンタ変数iを自分でインクリメントしている
			i += 1;
			
		} while( i < 5 );	// ここで継続条件の判定
	}
}
------------------------------------------------------------------------
iは1回目の実行です。
iは2回目の実行です。
iは3回目の実行です。
iは4回目の実行です。
iは5回目の実行です。

do while文の書き方

3.do while文のフローチャート

do while文のフローチャート書くと次の様になります。

do while文のフローチャート

while文の時と比べて、処理の実行と継続条件の判定が逆になっていることが分かります。基本的な違いはそれだけです。

4.継続条件がfalseになる場合

そもそも、最初から継続条件がfalseになる場合でも、必ず1回は処理が実行されます。

package pac01;

public class HelloWorld {
	public static void main(String[] args) {
		int i = 0;
		
		// do while文
		do {
		
			// ここは必ず実行される
			System.out.println("iは" + (i + 1) + "回目の実行です。");
			
			// カウンタ変数iを自分でインクリメントしている
			i += 1;
			
		} while( i < 0 );	// ここで継続条件の判定
	}
}
------------------------------------------------------------------------
iは1回目の実行です。

do while文で継続条件がfalseの場合

継続条件が最初からfalseになる状態でしたが、一回は処理が実行されていることが分かります。と言うよりも、11行目の時点ではまだ継続条件を記述した行が出現していないので、どちらにしても関係ないことになります。

コメントを残す

サブコンテンツ

このページの先頭へ