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" } }