カテゴリ: Kotlin 更新日: 2025/06/25

Kotlinで条件式をネストする方法!多段条件分岐の基本を解説

Kotlinで条件式をネストする方法!多段条件分岐の基本を解説
Kotlinで条件式をネストする方法!多段条件分岐の基本を解説

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

生徒

「先生、Kotlinで条件をいくつも組み合わせて判断したいときはどう書くんですか?」

先生

「それはifの中にifを入れる“ネスト”という書き方を使います。多段条件分岐とも呼ばれ、複数の条件を順番にチェックできます。」

生徒

「初心者の僕でも書けるようになりますか?」

先生

「もちろんです。わかりやすい手順と例で、一緒に見ていきましょう!」

1. 条件式をネストするとは?

1. 条件式をネストするとは?
1. 条件式をネストするとは?

条件式のネストとは、「もしAならこう、じゃなければBの中でもさらに判断して…」という、複数段階で判断をくわえる方法です。初心者の方にも、わかりやすく言えば、料理で「もし甘いなら砂糖を減らす、でも酸っぱいなら砂糖を増やす」ような手順をそのままプログラムにするイメージです。

if文は通常、if(条件){…} else {…}ですが、そのelseの中にまたifを書いて「ネスト(入れ子)」にします。

2. ネストの基本例

2. ネストの基本例
2. ネストの基本例

では、例を見てみましょう。年齢によって「子供」「成人」「高齢者」に分ける場合です。


fun main() {
    val age = 70
    if (age < 20) {
        println("子供")
    } else {
        if (age < 65) {
            println("成人")
        } else {
            println("高齢者")
        }
    }
}

このコードでは、最初に「20未満か」を調べ、違っていたらさらに「65未満か」で判断しています。3種類を分けられる「多段条件分岐」の典型的な使い方です。

3. else if を使ってスッキリ書く

3. else if を使ってスッキリ書く
3. else if を使ってスッキリ書く

Kotlinでは、elseの中にわざわざifと書かなくても、else ifを使えばもっとスッキリ書けます。


fun main() {
    val age = 70
    if (age < 20) {
        println("子供")
    } else if (age < 65) {
        println("成人")
    } else {
        println("高齢者")
    }
}

このようにすると、「ネストが浅くなって見やすい」「追加の条件も簡単に増やせる」というメリットがあります。

4. 複数条件をネストするときの注意点

4. 複数条件をネストするときの注意点
4. 複数条件をネストするときの注意点

ネストするときは、

  • 条件の順番:上から順にチェックされます。重要な条件は先に書きましょう。
  • インデント(字下げ):コードが深くなると見にくくなるので、インデントをきちんと整えることが大切です。
  • 評価の重複:同じ条件を何度も書かないように注意が必要です。

5. if式で値を返すパターン

5. if式で値を返すパターン
5. if式で値を返すパターン

さらに、if式は「値として使える」ので、ネストして値を返すこともできます。関数や変数の代入で使うときに便利です。


fun category(age: Int): String {
    return if (age < 20) {
        "子供"
    } else if (age < 65) {
        "成人"
    } else {
        "高齢者"
    }
}
println(category(70)) // 高齢者

このように書くと、「関数の返り値」を条件に応じて返す多段条件分岐になります。

6. when式でネストを簡単にする方法

6. when式でネストを簡単にする方法
6. when式でネストを簡単にする方法

Kotlinには、when式というswitchに似た構文があり、ネストを減らしてもっと分かりやすく書けます。


fun category2(age: Int): String {
    return when {
        age < 20 -> "子供"
        age < 65 -> "成人"
        else -> "高齢者"
    }
}
println(category2(70)) // 高齢者

この方法なら、else ifよりもさらにシンプルに条件分岐をまとめて扱えます。

7. ネスト条件分岐の書き方まとめ

7. ネスト条件分岐の書き方まとめ
7. ネスト条件分岐の書き方まとめ

多段条件分岐の基本としては、

  • if文でネストして段階的に判断
  • else ifを使ってスッキリ
  • when式でさらにわかりやすく

初心者でも「条件を順番に並べて判断する」流れがイメージできれば、ネストもすぐに使いこなせます。

カテゴリの一覧へ
新着記事
Go言語の関数でエラーハンドリングする基本的な方法
Go言語のスライス・マップ・配列をまとめて比較してみよう!初心者でもわかる使い分けの基本
Go言語の条件分岐の見やすい書き方を徹底解説!初心者でもわかるif文の使い方
Go言語とは何か?初心者向けに特徴・できること・インストール手順までやさしく解説
人気記事
No.1
Java&Spring記事人気No1
Swift Playgroundの使い方を完全解説!初心者に最適な学習環境の始め方
No.2
Java&Spring記事人気No2
Go言語で条件式を1行で書くコツ!三項演算子の代替と短縮記法
No.3
Java&Spring記事人気No3
Swift開発環境の構築方法を徹底解説!Xcode・Windows・Linux対応
No.4
Java&Spring記事人気No4
Kotlinのデータクラス(data class)とは?便利な特徴と使い方を初心者向けにやさしく解説!