Skip to content

3. 条件分岐 ​

学習目標: ifで条件に応じた処理を書き、境目の値でも確かめられる。

「チェックポイントが3以上ならゴール」。このルールをコードにしてみましょう。

ifの書き方 ​

kotlin
val checkpoint = 3
if (checkpoint >= 3) {
    println("ゴール")
} else {
    println("あと少し")
}

checkpoint >= 3を計算するとtrue(成り立つ)になります。その場合は最初の{ }の中だけを実行します。falseならelse側です。

記号意味
== / !=等しい / 等しくない
> / <より大きい / より小さい
>= / <=以上 / 以下
&& / ||両方成り立つ / 少なくとも片方が成り立つ
!trueとfalseを反転する

=は代入、==は比較です。似ていますが仕事が違います。

予想:3自身はどちらに入る? ​

演習の初期コードはcheckpoint > 3です。checkpointを2、3、4にしたとき、それぞれ何が表示されるか予想しましょう。

ゴールの境界を決めよう

checkpointが3以上なら「ゴール」、それ未満なら「あと少し」。2、3、4のすべてで確認しよう。

目標の出力
checkpoint = 2 → あと少し
checkpoint = 3 → ゴール
checkpoint = 4 → ゴール

自動採点ではありません。入力を変えた場合も結果を確かめてください。

ヒント 1

「より大きい」と「以上」では、3自身を含むかが違う。

ヒント 2

>=は「以上」。直したらcheckpointを2と4にも変えて確かめよう。

解答例
fun main() {
    val checkpoint = 3
    if (checkpoint >= 3) {
        println("ゴール")
    } else {
        println("あと少し")
    }
}

解答例を閉じて、もう一度自分で書いてみてください。これ以外の正しい書き方もあります。

値を選ぶif ​

Kotlinのifは値を返す式としても使えます。

kotlin
val powered = true
val jumpPower = if (powered) 1.5 else 1.0
println(jumpPower)

この場合、jumpPowerは1.5です。値を必ず選べるように、else側も用意します。

MODでの使用例 ​

条件分岐は「特定の状態のときだけジャンプさせる」といった動きに使えます。まずはpoweredのような単純なBooleanで練習しましょう。Minecraftから状態を取得する方法は、Kotlinの条件分岐とは別に学ぶAPIの知識です。