「実務で使う」場面を想定すると、単なる学習用の繰り返しではなく ユーザー入力の確認 や 処理の再試行 に do-while が役立ちます。最低1回は必ず処理を実行するので、業務アプリの「入力チェック」や「リトライ処理」に自然に使えます。
実務でありがちなサンプル
1. ユーザー入力のバリデーション
例えば、社員番号を入力させて「数字で8桁」になるまで繰り返す。
import java.util.Scanner;
public class EmployeeInput {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String empId;
do {
System.out.print("社員番号(8桁の数字)を入力してください: ");
empId = sc.nextLine();
} while (!empId.matches("\\d{8}")); // 正規表現でチェック
System.out.println("入力された社員番号: " + empId);
sc.close();
}
}
Java👉 実務では「必ず1回は入力を促す」ので do-while が自然。
👉 入力チェックを繰り返す処理にぴったり。
2. DB接続やAPI呼び出しのリトライ処理
ネットワークが不安定なとき、最低1回は試みて、失敗したら一定回数まで再試行。
public class ApiRetry {
public static void main(String[] args) {
int retryCount = 0;
boolean success;
do {
success = callApi(); // API呼び出し(仮のメソッド)
retryCount++;
if (!success) {
System.out.println("失敗。リトライ中... (" + retryCount + "回目)");
}
} while (!success && retryCount < 3);
if (success) {
System.out.println("API呼び出し成功!");
} else {
System.out.println("3回試行しましたが失敗しました。");
}
}
private static boolean callApi() {
// 実務ではHTTPリクエストやDB接続処理を書く
// ここではランダムで成功/失敗を返す例
return Math.random() > 0.5;
}
}
Java👉 「最低1回は試す」+「失敗したら再試行」=do-while が自然。
👉 実務でよくある「リトライ処理」に使える。
3. メニュー選択型の業務アプリ
業務システムで「処理を選んで、終了するまで繰り返す」ケース。
import java.util.Scanner;
public class MenuApp {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int choice;
do {
System.out.println("=== メニュー ===");
System.out.println("1. 顧客検索");
System.out.println("2. 売上集計");
System.out.println("3. 終了");
System.out.print("選択してください: ");
choice = sc.nextInt();
switch (choice) {
case 1:
System.out.println("顧客検索を実行しました。");
break;
case 2:
System.out.println("売上集計を実行しました。");
break;
case 3:
System.out.println("終了します。");
break;
default:
System.out.println("不正な選択です。");
}
} while (choice != 3);
sc.close();
}
}
Java👉 実務の「メニュー型アプリ」では必ず1回は表示するのでdo-whileが自然。
✅ まとめ
- 入力チェック → ユーザーが正しい値を入れるまで繰り返す
- リトライ処理 → APIやDB接続を最低1回試みて、失敗したら再試行
- メニュー選択 → 業務アプリで必ず1回は表示する
こういう「最低1回は必ず処理する」場面が実務では多いです。
