結果だけでなく過程も見てください

日々の奮闘を綴る日記です。

Kotlin文法まとめ

最近iPhoneアプリの移植で触り始めました。
メモとして適宜追加していきます。

when文 (Java/Cでいうswitch文)

変数fruitで分岐させる場合。Java/Cでいうbreakは不要です。

val FRUIT_APPLE    :Int = 0
val FRUIT_BANANA   :Int = 1
val FRUIT_MELON    :Int = 2
val FRUIT_LEMON    :Int = 3

 :

when ( fruit )
{
    FRUIT_APPLE              -> print("RINGO")
    FRUIT_BANANA             -> print("BANANA")
    FRUIT_MELON, FRUIT_LEMON -> print("MELON or LEMON")
    else                     -> print("OTHER")
}

ブロックも使えます。また複数の文を書きたい場合は、セミコロンで区切ります。

when ( fruit )
{
    FRUIT_APPLE              -> { print("RINGO"); fruit_name="RINGO" }
    FRUIT_BANANA             -> { print("BANANA"); fruit_name = "BANANA" }
    FRUIT_MELON, FRUIT_LEMON -> { print("MELON or LEMON"); fruit_name="MELON or LEMON" }
    else                     -> { print("OTHER"); fruit_name="OTHER" }
}

私はあまり好みではないですが、引数なしのwhen文という書き方もあるようです。

when
{
    fruit == FRUIT_APPLE                         -> { print("RINGO"); fruit_name="RINGO" }
    fruit == FRUIT_BANANA                        -> { print("BANANA"); fruit_name = "BANANA" }
    fruit == FRUIT_MELON || fruit == FRUIT_LEMON -> { print("MELON or LEMON"); fruit_name="MELON or LEMON" }
    else                                         -> { print("OTHER"); fruit_name="OTHER" }
}
プライバシーポリシー お問い合わせ