【じょうけんぶんき】

条件分岐(if文) とは?

💡 「もし〜なら」で道を選ぶプログラムの分かれ道
📌 このページのポイント
条件分岐(if / else if / else) スタート 点数 ≥ 80? if Yes "優秀!" No 点数 ≥ 60? else if Yes "合格" No "再挑戦" else 条件に応じて実行する処理を切り替える
条件分岐(if文)のイメージ
ひよこ ひよこ

if文って日常でいうとどんな感じ?

ペンギン先生 ペンギン先生

「もし雨なら傘を持つ、そうでなければ持たない」。プログラムも同じで、条件に応じて処理を変える。ログイン判定、年齢チェック、在庫確認など、ほぼすべてのアプリにif文が使われている。

ひよこ ひよこ

else if がたくさん並ぶと読みにくくない?

ペンギン先生 ペンギン先生

そのとおり。else if が5つ以上並ぶようなら switch文に書き換えるか、オブジェクトマッピングで対応するほうがスッキリする。リファクタリングの基本テクニックとして覚えておくといい。

ひよこ ひよこ

三項演算子っていうのも条件分岐?

ペンギン先生 ペンギン先生

条件 ? trueの値 : falseの値 という書き方で、if-elseを1行で書ける。短い条件分岐には便利だけど、複雑な処理を詰め込むと読みにくくなるので「シンプルな二択」に限定して使うのがコツ。

ひよこ ひよこ

ガード節って何?

ペンギン先生 ペンギン先生

関数の先頭で異常条件を先にreturnして、正常系のインデントを浅く保つテクニック。if-elseのネストが深くなるのを防ぐ。例えば「if (!user) return null; if (!user.isActive) return null; // ここから正常処理」のように書く。可読性が格段に上がるよ。

ひよこ ひよこ

パターンマッチングってif文の進化版なの?

ペンギン先生 ペンギン先生

そう言えるね。RustのmatchやKotlinのwhen、Python 3.10以降のmatch-case文は、値の構造を分解しながら条件分岐できる。単なる値の比較だけでなく「この型で、このフィールドがこの値なら」という複雑な条件を美しく書ける。if-elseの連鎖やswitch文の限界を超える強力な機能で、モダンな言語では標準的な機能になりつつあるよ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
条件分岐って出てきたら「条件によって実行する処理を切り替える仕組み」と思えばだいたいOK!
📖 おまけ:英語の意味
「if statement」 = もし〜ならば、という文
💬 英語の「if(もし)」がそのまま予約語になった、最も直感的なキーワードのひとつ
← 用語集にもどる