Kotlinのif式の基本!条件分岐の書き方とelseの使い方をやさしく解説
生徒
「Kotlinで条件によって処理を分けたいんですが、どうすればいいですか?」
先生
「Kotlinでは、if式を使って条件分岐ができます。条件に応じて異なる処理を実行することが可能です。」
生徒
「具体的にはどのように書くんですか?」
先生
「それでは、基本的な使い方を見ていきましょう!」
1. if式とは?
if式は、Kotlinで「条件によって結果を変えたい」ときに使うもっとも基本的な書き方です。人間の会話に置きかえると、「もし◯◯なら〜する」という考え方と同じで、プログラムに判断をさせるための大切な仕組みです。
たとえば、テストの点数が60点以上なら「合格」、60点より小さいなら「不合格」と表示したい場合、if式を使えば簡単に書けます。
fun main() {
val score = 75
if (score >= 60) {
println("合格です")
} else {
println("不合格です")
}
}
このように、条件を満たしたときの処理と、満たさなかったときの処理を分けることができます。数値だけでなく、文字や条件の組み合わせにも使えるので、Kotlinを学ぶうえで避けて通れない基本の文法です。
2. if式の基本的な書き方
以下は、Kotlinでのif式の基本的な書き方です。
fun main() {
val number = 10
if (number > 5) {
println("5より大きいです")
}
}
このコードでは、変数numberが5より大きい場合に「5より大きいです」と表示されます。
3. elseを使った条件分岐
if式にelseを追加することで、条件が満たされない場合の処理を指定できます。
fun main() {
val number = 3
if (number > 5) {
println("5より大きいです")
} else {
println("5以下です")
}
}
このコードでは、numberが5より大きい場合は「5より大きいです」と表示され、それ以外の場合は「5以下です」と表示されます。
4. else ifを使った複数条件の分岐
else ifを使うことで、複数の条件を順番に評価して処理を分岐させることができます。
fun main() {
val score = 85
if (score >= 90) {
println("評価: A")
} else if (score >= 80) {
println("評価: B")
} else if (score >= 70) {
println("評価: C")
} else {
println("評価: D")
}
}
このコードでは、scoreの値に応じて評価を表示します。条件は上から順に評価され、最初に満たされた条件の処理が実行されます。
5. if式を使って値を返す
Kotlinでは、if式を使って値を返すことができます。これは、Javaの三項演算子のような使い方が可能です。
fun main() {
val a = 10
val b = 20
val max = if (a > b) a else b
println("最大値は $max です")
}
このコードでは、aとbのうち大きい方の値がmaxに代入されます。
6. if式のネスト(入れ子)
if式の中にさらにif式を入れることをネストといいます。複雑な条件分岐が必要な場合に使われます。
fun main() {
val number = 10
if (number > 0) {
if (number % 2 == 0) {
println("正の偶数です")
} else {
println("正の奇数です")
}
} else {
println("0以下です")
}
}
このコードでは、numberが正の数かつ偶数か奇数かを判定して表示します。
7. 比較演算子と論理演算子
if式で使われる主な比較演算子と論理演算子は以下の通りです。
==: 等しい!=: 等しくない>: より大きい<: より小さい>=: 以上<=: 以下&&: かつ(AND)||: または(OR)!: 否定(NOT)
これらを組み合わせることで、複雑な条件を表現できます。
8. 実践例:偶数・奇数の判定
実際に、数値が偶数か奇数かを判定するプログラムを作ってみましょう。
fun main() {
val number = 7
if (number % 2 == 0) {
println("$number は偶数です")
} else {
println("$number は奇数です")
}
}
このコードでは、numberが偶数か奇数かを判定して表示します。
9. 実践例:年齢による分類
年齢に応じて、未成年、成人、高齢者を分類するプログラムを作ってみましょう。
fun main() {
val age = 70
if (age < 20) {
println("未成年です")
} else if (age < 65) {
println("成人です")
} else {
println("高齢者です")
}
}
このコードでは、ageの値に応じて分類を表示します。
まとめ
Kotlinにおけるif式は、条件によって処理を分けるための基本中の基本であり、初心者がまず最初に覚えるべき重要な構文です。本記事では、Kotlinのif文の基本構文から、elseやelse ifによる複数条件の分岐方法、さらにネストや値を返す方法、比較演算子と論理演算子の使い方までを一通り学びました。
条件分岐は、Kotlinのようなプログラミング言語でロジックを制御するために欠かせない仕組みです。特にif式を使いこなすことで、ユーザーの入力値による判断、スコア評価、分類処理、さらにはシステムの挙動の切り替えまで、多彩な表現が可能になります。
たとえば「数値が正かどうか」「点数が何点以上か」「偶数か奇数か」などの条件に応じて処理を変える場面は日常的に存在します。Kotlinでは、Javaと異なり三項演算子が存在しない代わりに、if式が値を返すという柔軟な機能を持っている点が特徴です。
実際のプログラムでは、複数の条件が組み合わさることがよくあります。そのようなときには、else ifを使って順序を意識した条件分岐を行うことで、想定通りの動作が実現できます。さらに、条件の中に条件を入れ込むネスト構造を用いれば、より複雑な判断も可能になります。
ここで改めて、実践的なKotlinのif式を活用した例を紹介します。
fun main() {
val temperature = 32
val message = if (temperature >= 35) {
"猛暑日です"
} else if (temperature >= 30) {
"真夏日です"
} else if (temperature >= 25) {
"夏日です"
} else {
"過ごしやすい日です"
}
println("気温: $temperature 度")
println(message)
}
上記の例では、気温の数値に応じて異なるメッセージを出力する処理をif式で書いています。Kotlinらしくifを使って値を直接変数messageに代入しており、コードがシンプルに保たれています。
Kotlinで条件分岐を記述するときは、コードの読みやすさ・保守性も意識することが大切です。条件を整理し、論理演算子(&& や ||)を使って明確に判断条件を記述すれば、後から見たときに理解しやすく、バグの少ないコードになります。
最後に、Kotlinのif式に関連するキーワードや書き方を復習するとともに、自分で条件分岐のパターンをたくさん練習しておくことで、実践力が身につきます。繰り返しコードを書きながら、自然に条件分岐ができるようになりましょう。
生徒
「Kotlinのif式って、思ったよりいろんな使い方ができるんですね!」
先生
「そうですね。単なる条件分岐だけじゃなく、値を返したり、ネストで複雑な判断もできるのがKotlinの良いところです。」
生徒
「else ifを使えば、点数や年齢みたいな段階的な条件分けも簡単に書けるんですね。」
先生
「その通りです。複数の条件を順番に評価していけば、思い通りの動作を作れますよ。条件の順序も大事なポイントです。」
生徒
「if式でそのまま変数に代入できるのも便利ですね!三項演算子がいらないのが驚きでした。」
先生
「Kotlinらしい書き方ですね。スッキリとしたコードが書けるので、ぜひ活用してみてください。」
生徒
「条件分岐がわかると、プログラムにいろんな動きをつけられるようになる気がします!」
先生
「その気づきがとても大事です。if式はすべてのプログラミングの基本なので、たくさん練習してしっかり身につけましょう。」