プログラミングを学び始めると、必ずと言っていいほど最初に出会う「壁」であり、かつ最も重要な構文の一つが「条件分岐(if文)」です。Javaにおけるif文は、プログラムに「判断」をさせるための仕組み。この記事では、if文の基本から現場で本当に役立つ実践テクニックまで、体験談を交えて分かりやすく解説します。


Java if文とは何か?初心者が知っておくべき基本概念
if文とは、指定した条件がtrue(真)の場合にのみ、特定の処理を実行する条件分岐の構文です。日常生活でも「もし雨が降っていたら(条件)、傘を持つ(処理)」という判断をしますが、それをプログラムで表現したものがif文です。
if文の基本構造を理解しよう
Javaでのif文の基本は非常にシンプルです。
if (条件式) {
// 条件が正しい(true)ときに動く処理
}
条件式には、結果が true か false になる式を入れます。変数の値を比較したり、状態を確認したりするのが一般的です。

変数の使い方については、こちらの記事も併せて読んでおくと理解が深まります。

if文はどう使う?実践的な書き方を詳しく解説
if文は、条件が一つだけの場合だけでなく、複数の条件を使い分けることも可能です。実務でよく使われる3つのパターンを見ていきましょう。
パターン1:単純なif文
「ある条件を満たすときだけ」処理を行いたい場合です。
int score = 85;
if (score >= 80) {
System.out.println("優秀です!");
}
このコードでは、変数scoreが80以上の場合にのみ「優秀です!」と出力されます。もし79点なら、何も出力されません。
パターン2:if-else文(二者択一)
「条件を満たさない場合」の処理も書きたいときに使います。
int age = 15;
if (age >= 18) {
System.out.println("成人です");
} else {
System.out.println("未成年です");
}
条件が false(18歳未満)のとき、必ず else ブロックの処理が実行されます。漏れなく処理を行いたい場合に必須の形です。

パターン3:else if文(複数分岐)
「条件Aなら処理1、条件Bなら処理2、それ以外は処理3」のように、細かく分けたい場合です。
int rank = 2;
if (rank == 1) {
System.out.println("優勝!");
} else if (rank == 2) {
System.out.println("準優勝!");
} else {
System.out.println("入賞ならず");
}
上から順番に判定され、最初に true になったブロックだけが実行されます。どれも true にならなければ else が実行されます。
あわせて読みたい:

データ型によって扱える範囲が異なるため、判定する値に合わせて型を選ぶのも重要です。

現場で役立つ!if文を強力にする「論理演算子」
実務では、一つの条件だけで判断することは少なく、複数の条件を組み合わせることがほとんどです。そこで欠かせないのが論理演算子です。
| 演算子 | 意味 | 具体例 |
|---|---|---|
| && | かつ (AND) | もし18歳以上 かつ 免許あり |
| || | または (OR) | もし平日 または 祝日 |
| ! | 〜ではない (NOT) | もし満席 ではない なら |
実務での活用例:複数条件の判定
boolean hasTicket = true;
int age = 20;
// チケットを持っている かつ 18歳以上なら入場可能
if (hasTicket && age >= 18) {
System.out.println("イベントに入場できます");
}
このように書くことで、複雑な条件を一行でスッキリと表現できます。これは実務で毎日使うテクニックです。

boolean canEnter = hasTicket && age >= 18;など)、変数名で意味を持たせるように工夫しています。
注意!よくある勘違いと現場での失敗談
if文自体はシンプルですが、Java特有のルールや「初心者が絶対と言っていいほどハマる罠」がいくつか存在します。
間違い①:文字列の比較を「==」で行う
これが最も多い失敗です。Javaで文字列(String)の内容を比較する際、== を使うと期待通りに動きません。
==は「場所(参照)」を比較してしまいます- 入力値によっては「中身は同じなのに一致しない」という怪奇現象が起きます
String s1 = "Java";
if (s1 == "Java") { // たまたま動くこともあるが、基本はNG
System.out.println("一致");
}
- 内容を比較する場合は必ず
equals()メソッドを使います
String s1 = "Java";
if (s1.equals("Java")) {
System.out.println("正しく一致します");
}

intなど)は ==、オブジェクト(Stringなど)は equals という使い分けは、呪文のように覚えておきましょう。
このあたりの細かい仕組みを知りたい方は、こちらの記事が非常に参考になります。

間違い②:セミコロンの打ちすぎ
これも初心者あるあるです。if文の条件の直後に ; を打ってしまうミスです。
if (score > 60); { // ここにセミコロンがあると...
System.out.println("合格"); // 条件に関係なく、常に実行されます
}
セミコロンを打つと「ここで文が終わる」という意味になるため、if文の効果が消えてしまいます。コードを見直す際に、意外と見落としがちなポイントです。
まとめ:if文を使いこなして自由なプログラムを
Javaのif文は、単なる文法以上の意味を持っています。それはプログラムが自ら判断し、人間に代わって複雑な処理をこなすための「心臓部」のような存在です。
この記事のポイント
- if文は「条件が正しい時だけ」処理を動かす魔法
- else, else if を使って複数の道筋を用意できる
- 複雑な判断には &&(かつ) や ||(または) を活用する
- 文字列の比較は絶対に
equals()を使うこと - 現場では「条件漏れがないか?」を常に意識する

次は、同じく条件分岐でよく比較される「switch文」についても学んでおくと、より表現の幅が広がりますよ!


