繰り返し処理

Java – break文とcontinue文の違いや使い分けについて解説

break文はループやswitch文を終了させるために使用され、現在の処理を完全に抜け出します。

一方、continue文はループ内で使用され、現在の反復処理をスキップして次の反復に進みます。

たとえば、break文は特定の条件でループ全体を終了したい場合に適し、continue文は特定の条件を飛ばしてループを継続したい場合に便利です。

break文とcontinue文とは何か

Javaにおけるbreak文とcontinue文は、ループ処理やswitch文の制御に使用される重要な構文です。

これらの文を使うことで、プログラムの流れを柔軟に制御することができます。

以下にそれぞれの文の基本的な説明を示します。

break文

  • break文は、ループやswitch文の実行を中断し、次の処理に移るために使用されます。
  • ループ内で特定の条件が満たされた場合に、ループを終了させるのに便利です。

continue文

  • continue文は、ループの現在の反復をスキップし、次の反復に移るために使用されます。
  • ループ内で特定の条件が満たされた場合に、その反復の残りの処理をスキップするのに役立ちます。

これらの文を適切に使用することで、プログラムの可読性や効率を向上させることができます。

次のセクションでは、break文とcontinue文の具体的な使い方について詳しく解説します。

break文とcontinue文の違い

break文とcontinue文は、どちらもループ処理に関連していますが、その動作は異なります。

以下の表に、両者の違いをまとめました。

特徴break文continue文
目的ループを完全に終了させる現在の反復をスキップする
使用場所for、while、do-while、switch文for、while、do-while
実行後の動作ループの外に移動次の反復に移動
例外処理switch文のケースを終了させるループ内の特定の条件をスキップ

break文の動作

break文は、ループやswitch文の実行を中断し、次の処理に移ります。

例えば、特定の条件が満たされた場合にループを終了させることができます。

以下はその例です。

import java.util.Scanner;
public class App {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int number;
        while (true) { // 無限ループ
            System.out.print("0を入力すると終了します: ");
            number = scanner.nextInt();
            if (number == 0) { // 条件が満たされた場合
                break; // ループを終了
            }
            System.out.println("入力された数: " + number);
        }
        scanner.close();
    }
}
0を入力すると終了します: 5
入力された数: 5
0を入力すると終了します: 0

continue文の動作

continue文は、ループの現在の反復をスキップし、次の反復に移ります。

特定の条件が満たされた場合に、その反復の残りの処理をスキップするのに役立ちます。

以下はその例です。

import java.util.Scanner;
public class App {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int number;
        for (int i = 1; i <= 5; i++) {
            System.out.print("数を入力してください: ");
            number = scanner.nextInt();
            if (number < 0) { // 条件が満たされた場合
                continue; // 現在の反復をスキップ
            }
            System.out.println("入力された数: " + number);
        }
        scanner.close();
    }
}
数を入力してください: 3
入力された数: 3
数を入力してください: -1
数を入力してください: 5
入力された数: 5
数を入力してください: 0
入力された数: 0
数を入力してください: -2

このように、break文とcontinue文はそれぞれ異なる目的で使用され、プログラムの流れを制御するために非常に便利です。

次のセクションでは、これらの文の使い分け方について詳しく解説します。

break文とcontinue文の使い分け方

break文とcontinue文は、ループ処理において異なる目的を持つため、適切に使い分けることが重要です。

以下に、使い分けのポイントを示します。

使い分けのポイント

使用シーンbreak文の使用例continue文の使用例
ループを完全に終了したい場合条件が満たされたらループを終了する条件が満たされたら次の反復に移る
特定の条件で処理を中断したい場合エラーメッセージを表示して終了する無効な入力をスキップする
複数の条件を持つ場合いずれかの条件でループを終了する特定の条件をスキップして処理を続ける

break文の具体的な使い方

break文は、特定の条件が満たされた場合にループを完全に終了させるために使用します。

例えば、ユーザーが特定の入力を行った場合に、プログラムを終了させるシナリオで役立ちます。

以下はその例です。

import java.util.Scanner;
public class App {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String input;
        while (true) { // 無限ループ
            System.out.print("終了するには 'exit' と入力してください: ");
            input = scanner.nextLine();
            if (input.equals("exit")) { // 条件が満たされた場合
                break; // ループを終了
            }
            System.out.println("入力された文字: " + input);
        }
        scanner.close();
    }
}
終了するには 'exit' と入力してください: hello
入力された文字: hello
終了するには 'exit' と入力してください: exit

continue文の具体的な使い方

continue文は、特定の条件が満たされた場合に、現在の反復をスキップし、次の反復に移るために使用します。

例えば、無効な入力をスキップして、次の入力を促すシナリオで役立ちます。

以下はその例です。

import java.util.Scanner;
public class App {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int number;
        for (int i = 1; i <= 5; i++) {
            System.out.print("1から10の数を入力してください: ");
            number = scanner.nextInt();
            if (number < 1 || number > 10) { // 条件が満たされた場合
                System.out.println("無効な入力です。再度入力してください。");
                continue; // 現在の反復をスキップ
            }
            System.out.println("入力された数: " + number);
        }
        scanner.close();
    }
}
1から10の数を入力してください: 15
無効な入力です。再度入力してください。
1から10の数を入力してください: 5
入力された数: 5
1から10の数を入力してください: -3
無効な入力です。再度入力してください。
1から10の数を入力してください: 8
入力された数: 8

このように、break文とcontinue文はそれぞれ異なるシナリオで使用されます。

プログラムの目的に応じて、適切に使い分けることが重要です。

まとめ

この記事では、Javaにおけるbreak文とcontinue文の基本的な使い方や、それぞれの違いについて詳しく解説しました。

これらの文を適切に使い分けることで、プログラムの流れをより柔軟に制御できるようになります。

今後は、実際のプログラムにこれらの文を取り入れて、より効率的なコーディングを目指してみてください。

関連記事

Back to top button