はじめに
Java のループ構文には
while 文 と do-while 文 の2種類があります。
見た目は似ていますが、
実は 「条件を評価するタイミング」 が違うため、
動作が大きく変わります。
- while は 0 回実行されることがある
- do-while は最低 1 回は実行される
- どっちを使うべきか迷う
こうした疑問を、やさしく・実務寄りに整理していきます。
まずはコードを確認
while 文
Java
int i = 0;
while (i < 3) {
System.out.println(i);
i++;
}do-while 文
Java
int i = 0;
do {
System.out.println(i);
i++;
} while (i < 3);while と do-while の最大の違い
while:先に条件をチェックする(前判定)
Java
while (条件) {
本体
}- 条件が false なら 1回も実行されない
- 実行前に「やる?やらない?」を判断する
do-while:先に本体を実行する(後判定)
Java
do {
本体
} while (条件);- 条件が false でも 最低1回は実行される
- 実行後に「続ける?やめる?」を判断する
実例で理解する
while は 0 回実行されることがある
Java
int n = 5;
while (n < 3) {
System.out.println("Hello");
}n < 3 が最初から false のため、
1回も実行されない。
do-while は必ず 1 回実行される
Java
int n = 5;
do {
System.out.println("Hello");
} while (n < 3);出力:
Hello
条件が false でも、
本体が1回実行されてから判定される。
while と do-while の実行順序
while の実行順序
① 条件チェック
② 本体
③ 更新
④ ①に戻る
do-while の実行順序
① 本体
② 更新
③ 条件チェック
④ ①に戻る
順番が逆になっているのがポイント。
よくあるミスと注意点
ミス①:do-while を使って意図せず1回実行される
Java
do {
process();
} while (flag);flag が false でも process() が1回動いてしまう。
対策
「必ず1回実行したい」場合だけ do-while を使う。
ミス②:while の条件式を更新し忘れて無限ループ
Java
while (i < 3) {
System.out.println(i);
// i++ を忘れる
}対策
ループ変数の更新を忘れない。
ミス③:do-while のセミコロンを忘れる
Java
} while (i < 3) // ← セミコロン必須do-while は 最後にセミコロンが必要。
初心者がよくつまずくポイント。
実務での使い分け
while が向いている場面
- 条件が true のときだけ実行したい
- 0回実行の可能性がある
- 入力チェック、待機処理など
do-while が向いている場面
- 最低1回は実行したい
- ユーザー入力の再試行
- メニュー表示など
まとめ
while
- 前判定
- 条件が false なら 0 回
- 一般的なループでよく使う
do-while
- 後判定
- 条件が false でも 1 回実行
- 特定の場面で便利

decopon
while と do-while は、 「条件をいつチェックするか」 この1点を押さえるだけで一気に理解が深まります。特に do-while は “最低1回実行” という特徴があるため、 使いどころを知っておくと実務でも安心して使えます。あなたの学びが、次のステップにつながりますように。

moco
while は“やる前にチェック”、
do-while は“やってからチェック”。
この順番を覚えると、ループがもっと読みやすくなるよ。

コメント