Javaループ制御完全マスター:while/for/do-whileとbreak/continue
ループの必要性
同じコードブロックを複数回実行する必要があるとき、ループ文を使用します。通常文は順次実行されますが、制御構造により複雑な実行パスが可能になります。
Javaのループ種類
| # | ループ | 説明 |
|---|---|---|
| 1 | while | 条件がtrueの間、文/ブロックを繰り返す。条件を事前判定 |
| 2 | for | 文列を複数回実行、ループ変数管理を簡潔に記述 |
| 3 | do-while | whileに似るが、条件を事後判定(最低1回実行保証) |
ループ制御文
実行フローを通常シーケンスから変更:
| # | 文 | 説明 |
|---|---|---|
| 1 | break | ループまたはswitchを即座に終了、直後の文へ移動 |
| 2 | continue | ループ本体の残りをスキップし、条件判定へ即ジャンプ |
拡張for文(for-eachループ)
Java 5導入。配列やコレクション要素をインデックス変数なしで順次走査するための構文。
構文
for (declaration : expression) { statements }
- Declaration:新規ブロック変数。配列要素と互換の型。ブロックスコープ内で現在要素の値を保持
- Expression:走査対象の配列、または配列を返すメソッド呼び出し
例
public class Test {
public static void main(String[] args) {
int[] numbers = {10, 20, 30, 40, 50};
for (int x : numbers) {
System.out.print(x);
System.out.print(",");
}
System.out.print("\n");
String[] names = {"James", "Larry", "Tom", "Lacy"};
for (String name : names) {
System.out.print(name);
System.out.print(",");
}
}
}
10, 20, 30, 40, 50, James, Larry, Tom, Lacy,
各ループの使い分け指針
| ループ | 適した場面 |
|---|---|
| for | 繰り返し回数が既知、カウンタ操作が必要、初期化・条件・更新を1箇所にまとめたい |
| while | 繰り返し回数未定、条件のみで制御、事前判定が必要 |
| do-while | 最低1回は実行必須、事後判定が自然(メニュー表示等) |
| 拡張for | 配列/コレクション全要素走査、インデックス不要、読み取り専用 |
次の章へ
次章ではJavaの意思決定文(if/if-else/ネストif/switch)について学習します。
Java
- JlinkでPLCnext Control上のJava 9アプリを最適化
- Java演算子をマスター:種類、構文、実践例
- Javaコメント:種類、使い方、ベストプラクティス
- Java if…elseをマスター:制御フローを徹底解説
- Java switch文をマスター:構文、使い方、ベストプラクティス
- Java拡張forループをマスター:構文、例、ベストプラクティス
- Javaインターフェース完全ガイド:概念、実装、ベストプラクティス
- Javaのtry-with-resourcesをマスターする:自動リソース管理の仕組みと活用法
- Javaアノテーション完全ガイド:種類、配置場所、実践例
- Javaでアームストロング数を判定・列挙するプログラム
- Javaで回文数を判定する:while文とfor文を使ったアルゴリズム