言語
日本語
English

Caution

お使いのブラウザはJavaScriptが無効になっております。
当サイトでは検索などの処理にJavaScriptを使用しています。
より快適にご利用頂くため、JavaScriptを有効にしたうえで当サイトを閲覧することをお勧めいたします。

Kotlin辞典

  1. トップページ
  2. Kotlin辞典
  3. if 式

if 式

Kotlin の『if』は文(statement)ではなく式(expression)として使えます。条件分岐の結果を変数に代入したり、関数の戻り値として直接返すことができます。

構文

// 文として使う基本形です。
if (条件) {
    // 処理
} else if (条件) {
    // 処理
} else {
    // 処理
}

// 式として使う場合(値を返します)。
val 変数 = if (条件) 値A else 値B

構文一覧

構文概要
if (条件)条件が true のときブロック内を実行します。
else if (条件)直前の条件が false のとき、追加の条件を評価します。
elseすべての条件が false のときに実行されるブロックです。
if 式ブロックの最後の式が値として返されます。三項演算子の代わりに使います。

サンプルコード

fun main() {
    val score = 75

    // 基本的な if / else if / else です。
    if (score >= 90) {
        println("優秀です。")
    } else if (score >= 60) {
        println("合格です。") // 『合格です。』と出力されます。
    } else {
        println("不合格です。")
    }

    // if 式として変数に代入します(三項演算子の代わり)。
    val result = if (score >= 60) "合格" else "不合格"
    println(result) // 『合格』と出力されます。

    // ブロックを使う場合、最後の式が値になります。
    val grade = if (score >= 90) {
        println("優秀!")
        "A"
    } else if (score >= 70) {
        println("良好!")  // 『良好!』と出力されます。
        "B"
    } else {
        "C"
    }
    println(grade) // 『B』と出力されます。

    // 関数の return でも if 式が使えます。
    val x = 10
    val abs = if (x >= 0) x else -x
    println("絶対値: $abs") // 『絶対値: 10』と出力されます。

    // null チェックにも使えます。
    val name: String? = "Kotlin"
    val greeting = if (name != null) "こんにちは、$name" else "名前がありません"
    println(greeting) // 『こんにちは、Kotlin』と出力されます。
}

概要

Kotlin には Java の三項演算子(『? :』)がありません。その代わりに『if』を式として使うことで同じ処理を書けます。式として使う場合は必ず『else』ブランチが必要です。『else』がないと値を確定できないためコンパイルエラーになります。

複数条件の分岐には『when 式』が適しています。Nullable 型との組み合わせには『?: エルビス演算子』も便利です。

記事の間違いや著作権の侵害等ございましたらお手数ですがまでご連絡頂ければ幸いです。