😀

Kotlin で if を使う

2024/11/25に公開

Keyword

if (条件) {処理}: 条件が成り立つ場合にコードブロック内の処理を実行する
else if (条件) {処理}: 複数の条件を追加したい場合、二つ目以降の条件・処理を指定する
else {処理}: 上記の条件に当てはまらなかったものに対してコードブロック内の処理を実行する

  • 条件が複数ある場合は、最初に当てはまった条件の処理が実行される
  • 処理が一文のみの場合は中括弧 {} を省略できる

if の使い方

if の利用方法には以下の2通りがあります。

  • if 文 (Statement) として使う
  • if 式 (Expression) として使う

if 文 (Statement) として使う

条件に当てはまる場合のみに処理をする場合は次のようになります。

if (a > 0) println("a is positive")

条件が一つ、かつ、条件に当てはまらない場合にも処理をする場合は次のようになります。

if (a > 0) {
    // a は正の数
    println("a is positive")
} else {
    // a は正の数ではない
    println("a is not positive")
}

最後に、二つ以上の条件を書く場合の例です。

if (a > 0) {
    // a は正の数
    println("a is positive")
} else if (a < 0) {
    // a は負の数
    println("a is negative")
} else {
    // a は正の整数でも負の整数でもない (a はゼロ)
    println("a is zero")
}

if 式 (Expression) として使う

Kotlin では ifとして扱うことができ、値を返すことができます。具体的な例を見てみましょう。

val message = if (a > 0) {
    "a is positive"
} else if (a < 0) {
    "a is negative"
} else {
    "a is zero"
}

println(message)

if 文の時との違いは、val message = if の前にあることです。この例では該当する条件の値で message 変数を初期化しています。
また、Kotlin ではこのように if を式として扱えるため、他のプログラミング言語にあるような三項演算子(条件 ? 真の場合の値 : 偽の場合の値)は存在しません。

まとめ

Kotlin の if の利用方法には次の 2 通りがあります。

  • if 文
  • if 式

特に、式として扱えるということは忘れがちになりそうなので、しっかり覚えておきたいです。

参考文献

Discussion