カテゴリ: Kotlin 更新日: 2025/11/18

Kotlinのbreakとcontinueの違いとは?ループを制御するテクニックを解説

Kotlinのbreakとcontinueの違いとは?ループを制御するテクニックを解説
Kotlinのbreakとcontinueの違いとは?ループを制御するテクニックを解説

先生と生徒の会話形式で理解しよう

生徒

「先生、Kotlinで繰り返し処理を途中で止めたり、飛ばしたりできるって本当ですか?」

先生

「はい、forwhileといったループ処理中に、breakcontinueを使って制御できるんです。」

生徒

breakcontinueって何が違うんですか?」

先生

「それでは、それぞれのしくみと使い方についてわかりやすく解説していきます!」

1. breakとは?ループを途中で抜ける方法

1. breakとは?ループを途中で抜ける方法
1. breakとは?ループを途中で抜ける方法

まず、breakはループ処理を途中で完全に終わらせるときに使います。途中で条件が満たされたらそこで止めたい場面にぴったりです。

たとえば、1から10まで順番に調べて、5を見つけたらそれ以上繰り返す必要はありません。そんなときにbreakを使います。


fun main() {
    for (i in 1..10) {
        if (i == 5) {
            println("5を見つけたので終了します")
            break
        }
        println(i)
    }
}

このコードを実行すると、1~4まで表示したあと「5を見つけたので終了します」と出て、そこでループが終わります。

2. continueとは?指定した回だけスキップ

2. continueとは?指定した回だけスキップ
2. continueとは?指定した回だけスキップ

次に、continueはループ処理のその回だけを

『飛ばして次の回へ進む』

動き方です。途中からやり直すイメージです。

たとえば、1から10までの中で偶数だけ飛ばして奇数だけ表示したいときなどに便利です。


fun main() {
    for (i in 1..10) {
        if (i % 2 == 0) {
            continue
        }
        println(i)
    }
}

この場合、偶数(2、4、6、8、10)はスキップされ、1、3、5、7、9だけが表示されます。

3. breakとcontinueの違いまとめ

3. breakとcontinueの違いまとめ
3. breakとcontinueの違いまとめ
  • break:ループ全体を途中で終了する。
  • continue:ループのその回だけをスキップし、次の回に進む。

この違いを頭に入れておくと、繰り返し処理を柔軟に制御できるようになります。

4. while文とbreak・continueの組み合わせ

4. while文とbreak・continueの組み合わせ
4. while文とbreak・continueの組み合わせ

while文でも同じようにbreakcontinueが使えます。たとえば、「入力が正しくなるまで繰り返す」ような場面で活躍します。


fun main() {
    var i = 0
    while (i < 10) {
        i++
        if (i == 3) {
            continue
        }
        println(i)
        if (i == 7) {
            println("7に到達したので終了")
            break
        }
    }
}

このコードでは、iが3のときスキップして表示せず、さらに7に達するとループを完全に終了しています。

5. breakとcontinueがあるときの注意点

5. breakとcontinueがあるときの注意点
5. breakとcontinueがあるときの注意点
  • ループが複雑になると、breakを使ったあとで処理が飛びすぎて意図しない動きになることがあります。
  • continueを使うと、その回の後続の処理をすべて飛ばすため、必要な処理を書き忘れない注意が必要です。

基本的にはループがシンプルな場合に使うと読みやすく、あとからコードを見たときに修正・理解しやすくなります。

6. breakとcontinueでコードをもっとスマートに!

6. breakとcontinueでコードをもっとスマートに!
6. breakとcontinueでコードをもっとスマートに!

たとえば配列やリストの中から特定のデータを見つけたときだけ処理したり、条件に合わないものだけスキップしたりするとき、breakcontinueを使うとコードがすっきりします。

初心者のうちは使いどころが難しく感じるかもしれませんが、

「途中でやめたい」「その回だけ飛ばしたい」という場面になったときに、

breakcontinueを思い出して使ってみてください。

まとめ

まとめ
まとめ

Kotlinの繰り返し処理におけるbreakcontinueは、どちらもループの流れを変えるためのとても重要な構文ですが、その役割はまったく異なります。ここまで学んできた内容をふりかえりながら、より深く理解できるように整理していきましょう。繰り返し処理はプログラムの中でも登場する機会が多く、「途中でループを抜けたい」「ある条件のときだけ処理を飛ばしたい」といった場面は思っている以上に多くあります。そうした状況の中で、break と continue を正しく使い分けることでコードの読みやすさや効率が大きく変わるため、この2つを理解することはとても大切です。

まずbreakは、「条件に当てはまった瞬間にそのループを完全に終わらせる」という動きをするため、探索系やチェック系の処理で真価を発揮します。例えば、リストの中から特定のデータを探して見つけた瞬間にそれ以上処理を続ける必要はありません。そんなときに break を使うことで、無駄な繰り返しを減らして処理速度を上げることができます。特に配列やリストが大きくなればなるほど break の存在は大きな効果をもたらします。

一方でcontinueは、「その回の処理だけをスキップする」という動きをします。これはフィルタリング処理や、ある条件のときだけ処理を避けたい場面で役立ちます。例えば、「偶数のときだけスキップしたい」「空文字のときだけ飛ばしたい」「特定の文字が含まれていたらその行を無視したい」といった状況で continue を使うと、とてもシンプルでわかりやすいコードになります。後続の処理を行わなくてよい部分が増えるため、必要な処理だけを実行できるようになります。

また、今回の記事では for文 や while文 と組み合わせて使う例も学びましたが、繰り返し処理は複雑になるほど break や continue の使い方によってコードの意味が大きく変わってきます。そのため「どこでループを抜けるのか」「どこでスキップするのか」を丁寧に考えながら組み立てることが重要です。条件が複雑な場合はラベル付き break や continue を使うこともできますが、まずは基本をしっかり押さえておくことで自然と応用へ進めるようになります。

ここからは、実際の開発でもよくある「特定のキーワードが含まれるデータを探して見つかったら終了し、それ以外は必要に応じて飛ばしていく」という処理をサンプルとして見てみましょう。今回学んだ break と continue のどちらも使う構成で、実際の挙動を確認しながら学習の定着を図れます。

サンプルプログラム:break と continue を組み合わせた検索とスキップ処理


fun main() {
    val keywords = listOf("犬", "猫", "うさぎ", "とり", "ライオン", "猫科", "魚")

    for (word in keywords) {
        // 「猫」が含まれる文字列はスキップ(continue)
        if (word.contains("猫")) {
            println("『猫』が含まれるためスキップ:$word")
            continue
        }

        // 「ライオン」を見つけた瞬間に終了(break)
        if (word == "ライオン") {
            println("ライオンを見つけたのでループを終了します:$word")
            break
        }

        println("処理中:$word")
    }
}

上のサンプルでは、猫を含む文字列をスキップしつつ、ライオンを見つけたら処理を止めるという2つの動きを組み合わせています。これだけでも break と continue の違いがはっきりとわかるはずです。特定の条件を除外したり、特定の条件が満たされた瞬間に処理を終えたいときなど、さまざまな場面で応用できるようになります。

さらに、while文 でも同様に break と continue を使うことで柔軟にループ処理を制御できます。ユーザー入力を受け取りながら特定の条件で終了したり、無効な値だけを飛ばしたりする形で活用できるため、実際のプログラミングには欠かせない考え方です。

break と continue をしっかり使い分けることができれば、プログラムの流れを自分の思いどおりに調整できるようになり、複雑な繰り返し処理を書くときもスムーズに進められるようになります。慣れてくると自然と「ここは break が必要だな」「この条件は continue が合うな」という判断ができるようになりますので、ぜひ実際のコードでも積極的に使ってみてください。

先生と生徒の振り返り会話

生徒

「break と continue の違いがようやくしっかり理解できました!特に continue のスキップは便利ですね。」

先生

「とても良い気づきですね。continue は余計な処理を避けたいときに役立つので覚えておくと便利ですよ。」

生徒

「break は必要なデータを見つけたら終わらせるときに使うんですよね。リストの検索で役立ちそうです!」

先生

「そうです。無駄な繰り返しをなくすことで効率も上がるので実務でもよく使われます。」

生徒

「サンプルプログラムを動かしてみて、実際にスキップしたり終了したりする動きがよくわかりました!」

先生

「理解が深まっている証拠ですね。ループ処理はこれからの学習でも何度も出てきますので、ぜひ今回の学びを活かしてコードを書いてみてください。」

カテゴリの一覧へ
新着記事
Go言語の構造体でインターフェースを実装する方法を初心者向けにやさしく解説!
Kotlinの演算子一覧と使い方!算術・比較・論理演算子の基本を解説
Go言語の文字列フォーマット!fmt.Sprintfで簡単に出力を整形する方法
Go言語のエラーと例外の違いを初心者向けに整理!わかりやすく解説
人気記事
No.1
Kotlin・Go・Swift記事の人気No1
Swiftのwhile文とrepeat while文を完全マスター!初心者にもわかる繰り返し処理の使い方と違い
No.2
Kotlin・Go・Swift記事の人気No2
Android Studioのインストール手順と初期設定を初心者向けに完全解説!
No.3
Kotlin・Go・Swift記事の人気No3
Swift入門ガイド|基本構文と書き方をマスターしよう
No.4
Kotlin・Go・Swift記事の人気No4
Kotlinの正規表現(Regex)の使い方をやさしく解説!文字列操作の基本を初心者向けに学ぼう
No.5
Kotlin・Go・Swift記事の人気No5
Kotlinで画面を作る!レイアウトXMLとビューの基本操作をやさしく解説
No.6
Kotlin・Go・Swift記事の人気No6
Kotlinのコンパニオンオブジェクトとは?初心者向けに使い方と役割をわかりやすく解説!
No.7
Kotlin・Go・Swift記事の人気No7
Kotlinのwhen式を完全ガイド!初心者でもわかるパターンマッチング的な使い方
No.8
Kotlin・Go・Swift記事の人気No8
Swiftのオプショナル型とは?初心者でもわかる使い方とアンラップの基礎