【Java入門】while文で「条件を満たすまで繰り返し」!do-whileとの違いと使い分け

docs

前回の記事(Java超入門!「for文」で処理を繰り返しまくろう! | ToolDocs )では、for文を使って「回数が決まっている繰り返し」について学んだよね!今回は、**「回数が決まってないけど、ある条件を満たすまで繰り返したい!」**ってときに大活躍するwhile文とdo-while文を紹介するよ。

while文は「〜の間ずっと繰り返す」

while文は、「条件がtrue(真)の間は、中の処理をずーっと繰り返す」っていうのが特徴なんだ。

イメージとしては、「お腹がいっぱいになるまで食べ続ける」みたいな感じ!

Java

// while文の書き方
while (条件式) {
    // 条件式がtrueの間、繰り返される処理
}

実際に例を見てみよう!

例1:100になるまで足し続ける計算

Java

public class WhileLoopExample {
    public static void main(String[] args) {
        int sum = 0;
        int num = 1;

        // sumが100未満の間、繰り返す
        while (sum < 100) {
            sum += num; // sumにnumを足す
            num++;      // numを1増やす
            System.out.println("現在の合計: " + sum + ", 次に足す数: " + num);
        }
        System.out.println("合計が100以上になりました。最終的な合計: " + sum);
    }
}

このコードでは、sumが100未満の間ずっと、sumnumを足していく処理を繰り返しているよね。sumが100以上になったら、繰り返しが終了するよ。

paizaで実行した結果

do-while文は「最低1回は実行してから条件チェック」

do-while文は、while文と似ているんだけど、ちょっと違う点があるんだ。それは、**「まず中の処理を1回実行してから、条件をチェックする」**っていうこと!

イメージとしては、「とりあえず一口食べてみて、美味しかったら食べ続ける」みたいな感じかな?

Java

// do-while文の書き方
do {
    // まず1回実行される処理
} while (条件式); // その後、条件式がtrueの間、繰り返される

これも例を見てみよう!

例2:ユーザーが「やめる」と入力するまで続ける

Java

import java.util.Scanner; // 入力を受け取るための準備

public class DoWhileLoopExample {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in); // スキャナーを作成
        String input;

        do {
            System.out.println("何か入力してください(「やめる」と入力すると終了します):");
            input = scanner.nextLine(); // ユーザーの入力を読み込む
            System.out.println("あなたは「" + input + "」と入力しました。");
        } while (!input.equals("やめる")); // 入力が「やめる」ではない間、繰り返す

        System.out.println("プログラムを終了します。");
        scanner.close(); // スキャナーを閉じる
    }
}

このコードでは、まず「何か入力してください」と表示されて、ユーザーが入力するまで待つよね。そして、入力された文字が「やめる」じゃなかったら、また同じ処理を繰り返すんだ。もし最初から「やめる」と入力しても、最低1回はメッセージが表示されるのがdo-while文のポイントだよ!

paizaで実行した結果

while文とdo-while文の使い分けってどうするの?

  • while:**「条件を満たさないと、そもそも1回も実行したくない」**ときに使うのがおすすめ。例えば、ファイルの読み込みで「ファイルが存在しないなら、何も処理しない」とかね。
  • do-while:**「最低1回は実行してから、条件によって繰り返すかどうか決めたい」**ときに使うのがおすすめ。例えば、ユーザーからの入力を受け取って、その入力が正しいかチェックしながら繰り返す、みたいな場面で便利だよ。

まとめ

今回は、条件に応じて繰り返しを行うwhile文とdo-while文について学んだね!

  • while:条件がtrueの間、処理を繰り返す。最初に条件をチェックする。
  • do-while:最低1回は処理を実行し、その後に条件をチェックして繰り返すかどうかを決める。

どちらもプログラムを書く上でめちゃくちゃよく使うから、色々な例を試して、しっかりマスターしてね!

コメント

タイトルとURLをコピーしました