プログラミングの用語一覧へ
このページの目次

do-whileとは?

読み方:do-while

最終更新:2026/08/18

3秒でわかる

先に本体を実行してから継続条件を判定するループ構文。入力の受け付けなど、最低 1 回は必ず動かしたい繰り返しを素直に書けます。

もう少し詳しく

どういうものか

do-while は、繰り返しの本体を先に実行し、その後で条件を判定するループです。判定が後ろにあるため、条件が最初から偽であっても本体は必ず 1 回実行されます。while との違いはこの 1 点だけです。

Java、C、C++、JavaScript で使えます。文末のセミコロンが必要な点に注意が要ります。Python には do-while が無いため、while Truebreak で同じ形を作ります。

なぜ必要か

「まず 1 回やってみて、結果を見て続けるか決める」処理は現実に多くあります。利用者に入力させてから妥当性を判定する、メニューを表示してから終了が選ばれたか確かめる、といった場面です。while で書くと、条件判定に必要な値をループの前でも取得することになり、同じコードが 2 か所に並びます。do-while ならその重複が消えます。

具体例

import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int number; do { System.out.print("1 から 10 の数を入力 "); number = sc.nextInt(); } while (number < 1 || number > 10); System.out.println("受け付けました " + number); } }

入力を受け取ってからでないと範囲を判定できないため、判定が後ろにある形が素直に当てはまります。

つまずきやすいところ

条件を書き間違えて無限ループになる事故が、while より起きやすくなります。判定が下にあると、本体の中で条件に使う変数を更新し忘れても目に付きにくいためです。上の例でも number = sc.nextInt(); を消せば永遠に終わりません。

もう 1 つは while (...) の後のセミコロンの付け忘れで、Java と C ではコンパイルエラーになります。逆に、通常の while の後ろに誤ってセミコロンを付けると、本体が空のループとして解釈され、エラーにならないまま固まります。

似た用語との違い

構文判定の位置最低実行回数
while先頭0 回
do-while末尾1 回
for先頭0 回


回数が決まっているなら for、条件次第で 0 回もありうるなら while、必ず 1 回は動かすなら do-while という選び方になります。

覚え方

「やってから考える」が do-while、「考えてからやる」が while です。

知識のつながり

サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

現在地do-whileプログラミング

LEARN BY DOING

この用語を、教材で使ってみる

直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

この用語を扱うコース

コース

Java入門:基礎文法編

69レッスン
コース

C言語入門 基礎文法編

66レッスン
コース

JavaScript入門:コードを動かす

23レッスン
Javaコースの全編を見る