do while文

みるくあいらんどっ! > ドキュメント > Java > じっくり学ぶ Java講座 [初心者向け・入門]


do while文の基礎

do while文は、for文、while文に続く 3つめの繰り返し(ループ)を実現するための構文です。構造は以下の通りで、予約語dowhileを使用します。条件の部分には boolean型となる式を記述します。条件が trueの間、繰り返しが行われます。

		do {
			// 繰り返したい処理
		} while(条件);

なお、for文と while文が前判定だったことに対して、do while文は後判定です。したがって、「繰り返したい処理」は最低でも 1回は実行される点が、大きく異なります。

数当てゲーム(do while版)

以前 F202プロジェクトで製作した「6の目が出るまでサイコロを振り続ける」プログラムを、改めて考えて見ます。

この仕様を do while文を使って実現したプログラムは以下の通り。

F301/F301.java

/**
 * 6の目が出るまでサイコロを振り続けます(do while版)。
 */
public class F301 {
	
	/**
	 * メインメソッド。
	 * @param args 引数
	 */
	public static void main(String[] args) {
		int sai;
		
		System.out.println("6の目が出るまでサイコロを振り続けます。");
		
		do {
			// 1~6のランダム値を saiに代入する
			sai = 1 + (int)(Math.random() * 6.0);
			System.out.println("サイコロの目は " + sai + "でした。");
		} while(sai != 6);
		
		System.out.println("プログラムを終了します。");
	}
}

実行結果の例は以下の通り。

6の目が出るまでサイコロを振り続けます。
サイコロの目は 3でした。
サイコロの目は 4でした。
サイコロの目は 6でした。
プログラムを終了します。

無限ループを使ったものと比べると、breakを使わなかった分、ソースコードがシンプルになったような気がします。

最終更新: 2013/02/01 , 公開: 2013/02/01
▲top