Javaのdo-while文とは?初心者向けにわかりやすく解説します!

こんにちは。ゆうせいです。

今回はJavaプログラミングに登場する「do-while文(ドゥー・ホワイル文)」について、やさしく解説していきます。「while文との違いは?」「どんなときに使うの?」といった疑問にもお答えします。とはいえ、先にお伝えしておくと、学習の優先度はそれほど高くありません。時間に余裕があればサラッと理解しておく程度で問題ありませんよ。


do-while文とは?

一度は必ず実行されるループ構文

Javaのdo-while文は「最低1回は処理を実行してから条件判定を行う」ループ構文です。

形式は以下のとおりです:

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

日本語で説明すると、

「まず処理を1回やってみて、その後に条件をチェックし、条件が合っていればもう一度やる」

という流れになります。

while文との違いは?

よく似ているwhile文と比較すると、違いがよりはっきりします。

構文処理前に条件を確認?最低1回は実行される?
while文はいいいえ
do-while文いいえ(後判定)はい

例え話:

  • while文は、ライブのチケットを持っている人だけが会場に入れる仕組み。
  • do-while文は、とりあえず全員が一度会場に入ってからチケットを持っているか確認される感じです。

具体例:do-while文を使ってみよう

int count = 1;

do {
  System.out.println("こんにちは!" + count + "回目");
  count++;
} while (count <= 3);

このコードの実行結果は以下の通りです:

こんにちは!1回目
こんにちは!2回目
こんにちは!3回目

このように、条件がfalseになるまで処理を繰り返します。


do-while文のメリットとデメリット

メリット

  • 少なくとも一回は必ず処理を実行したいときに使える。
    • たとえば、ユーザーに一度は入力を求めたい場面など。
  • 後判定だから、初期値が条件に合わなくても最初の一回は動作する。

デメリット

  • 使い所が限られるため、登場頻度が少ない。
  • 処理の流れが直感的にわかりにくく、可読性が落ちる場合もある

学習の優先順位は低めです

新人エンジニアの方にとって、まず習得すべきは次の3つのループ構文です:

  1. for文(回数が決まっているとき)
  2. while文(回数が不定なとき)
  3. 拡張for文(for-each)(配列やリストを順に処理)

これらに比べてdo-while文は使用頻度が低く、プロジェクトでほとんど見かけないケースもあります。理解しておいて損はありませんが、焦って覚える必要はありません


図で理解しよう:do-whileの流れ

以下のフローチャートで、do-while文の処理の流れを視覚的に理解できます。

+----------------+
|  処理を実行    |
+----------------+
        |
        v
+----------------+
|  条件を判定    |
+----------------+
        |
     +--+--+
     |     |
   Yes    No
     |     |
     v     v
  ループ   終了

今後の学習の指針

do-while文はJavaのループ構文の中でもややマイナーな存在です。最初はfor文やwhile文をしっかり理解し、それからdo-while文に触れるのが理想的です。

次のような順序で学習を進めると効率的ですよ:

  1. for文の基本と応用
  2. while文の基本と注意点
  3. 配列・リストとfor-each文
  4. do-while文(今回の内容)
  5. ループのネスト(入れ子)やbreakcontinueの使い方

最後に一言。

「まずはよく使う構文を完璧にしよう。do-whileは“知ってる”程度でOK!」

また分からないところがあればいつでも聞いてくださいね。


セイ・コンサルティング・グループの新人エンジニア研修のメニューへのリンク

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。