switchみたいな条件分岐がしたい
switchみたいな条件分岐がしたい
when
Kotlinにはswitch構文はありません。
代替としてwhenを使います。
ifと同様にwhenも式(when式)です。
フォーマット
以下のように記述します。
when(引数) {
値-> 戻り値
else -> 戻り値
}
when {
条件-> 戻り値
else -> 戻り値
}
elseは必須となっております
実装サンプル
val value = "hoge"
when {
value == "hoge" -> println("ほげ")
value == "fuga" -> println("ふが")
else -> println("piyo")
}
よくあるswitch的な書き方だとこんな感じです。
val value = "hoge"
when(value) {
"hoge" -> println("ほげ")
"fuga" -> println("ふが")
else -> println("piyo")
}
Stringの戻り値を持つwhenはこのように書きます。
val value = "hoge"
val result = when(value) {
"hoge" -> "ほげ"
"fuga" -> "ふが"
else -> "piyo"
}
println(result) // => ほげ
最終更新日時:2017年1月18日