Java - While ループ
こんにちは、未来のJavaプログラマーの皆さん!今日は、プログラミングの最も基本的な概念の一つであるwhileループについて深く掘り下げます。あなたの親しみのある近所のコンピューターサイエンスの先生として、あなたをこの旅に案内することができることを楽しみにしています。だから、お気に入りの飲み物を持って、快適に座って、一緒にこのコーディングの冒険に出かけましょう!
While ループとは?
コンピュータと「サイモンセイズ」のゲームをしているところを想像してみてください。コンピュータはあなたに指示をし続け、あなたもそれに従い続けます...コンピュータが「ストップ」を言うまで。それは基本的にプログラミングの中のwhileループが行うことです!
Whileループは、指定されたブール条件に基づいてコードを繰り返し実行するための制御フロー文です。それは、コンピュータに「ねえ、この条件が真の間はこのタスクを続け」と言うようなものです。
While ループの構文
基本的なwhileループの構文を見てみましょう:
while (条件) {
// 実行されるコードブロック
}
それだけ簡単です!条件はループの各反復の前に評価されます。それが真であれば、ループ内のコードが実行されます。このプロセスは、条件が偽になるまで続きます。
While ループの動作
whileループの実行プロセスを分解して見てみましょう:
- 条件が評価されます。
- 条件が真であれば、ループ内のコードが実行されます。
- 実行の後、条件が再び評価されます。
- ステップ2と3が条件が偽になるまで繰り返されます。
- 条件が偽になると、ループは終了し、プログラムはループの後の次の文に進みます。
フローダイアグラム
このプロセスを視覚化するために、以下のようなフローチャートを想像してみてください:
┌─────────────┐
│ 開始 │
└──────┬──────┘
│
┌──────▼──────┐
┌────►│ 条件 │
│ │ 真でしょう? │
│ └──────┬──────┘
│ │
│ ┌──────▼──────┐
│ │ 実行 │
│ │ コードブロック │
│ └──────┬──────┘
│ │
└────────────┘
│
┌──────▼──────┐
│ 終了 │
└─────────────┘
While ループの例
では、whileループがどのように動作するかを示す実際の例を見てみましょう!
例1:5までの数え方
int count = 1;
while (count <= 5) {
System.out.println("Count is: " + count);
count++;
}
この例では、count
が1から始まります。ループはcount
が5以下の間続きます。ループの各回、現在のカウントを出力し、その後1を増やします。
出力:
Count is: 1
Count is: 2
Count is: 3
Count is: 4
Count is: 5
例2:数の合計
1から10までの数の合計を計算してみましょう:
int sum = 0;
int number = 1;
while (number <= 10) {
sum += number;
number++;
}
System.out.println("The sum of numbers from 1 to 10 is: " + sum);
このループは、1から10までの各数をsum
変数に加算します。number
が11になると、条件number <= 10
は偽になり、ループは終了します。
出力:
The sum of numbers from 1 to 10 is: 55
例3:パスワードチェッカー
もっと実用的な例を見てみましょう。簡単なパスワードチェッカーを作ります:
import java.util.Scanner;
public class PasswordChecker {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String password = "java123";
String userInput;
while (true) {
System.out.print("Enter the password: ");
userInput = scanner.nextLine();
if (userInput.equals(password)) {
System.out.println("Correct password! Access granted.");
break;
} else {
System.out.println("Incorrect password. Try again.");
}
}
scanner.close();
}
}
このプログラムは、正しいパスワードが入力されるまでパスワードを要求し続けます。これは、whileループを使って対話型のプログラムを作成する方法を示しています。
Javaの無限Whileループ
では、少し危険ですが理解する必要があることを話しましょう:無限ループ。無限ループは、条件が常に真であるため、決して終わらないループです。
while (true) {
System.out.println("This is an infinite loop!");
}
このループは永遠に実行され、 "This is an infinite loop!"を繰り返し出力します。無限ループは特定のシナリオ(ゲームループやサーバープログラムなど)では便利ですが、プログラマーのエラーの結果として発生し、プログラムがハングアップする原因となります。
覚えておいてください、大きな力には大きな責任が伴います!常にループから脱出する方法を確保しておいてください。
結論
それでは、皆さん!私たちはwhileループの土地を旅し、基本的な構文から実用的な例、そして危険な無限ループまで見てきました。Whileループは、プログラマーのツールキットにおいて非常に強力なツールであり、反復的なタスクを自動化し、動的で応答性の高いプログラムを作成するためのものです。
Javaの冒険を続ける中で、whileループの数えきれない使用方法を見つけることになります。それらは、あなたのコーディングのスーパーヒーロー物語の信頼できるサイドキックのようなものです - 常に何かを繰り返しやすいときにここにいます。
覚えておいてください、練習は完璧にするためにある。自分のwhileループを作成し、異なる条件を試して、何を作成できるかを見てみてください。誰しもが?あなたの次のwhileループが、次の大きなアプリやゲームの基盤になるかもしれません!
コーディングの楽しさをお楽しみください、そして次回までに、ループし続け、学び続けてください!
Credits: Image by storyset