1. 導入:なぜ条件演算子を使うのか?
Javaでプログラミングをしていると、「ある条件によって値を切り替えたい」という場面によく遭遇します。例えば、「点数が80点以上なら合格、それ未満なら不合格」といった判定です。通常はif-else文を使いますが、単に値を代入したいだけなのに数行使うのは少し大げさですよね。そこで役立つのが「条件演算子(三項演算子)」です。これを使うと、コードを短く、読みやすく書くことができます。
2. 基礎知識:条件演算子とは?
条件演算子は、Javaで唯一「3つの要素」をとる演算子です。記述は「条件式 ? 値1 : 値2」という形式で行います。
・条件式が「true」なら「値1」が返される
・条件式が「false」なら「値2」が返される
という仕組みです。if-else文の簡易版のようなイメージで捉えてください。
3. 実装/解決策
条件演算子を使う際は、「戻り値(結果)」を変数に代入する形で使うのが一般的です。複雑な処理を詰め込むのではなく、あくまで「値を決定する」というシンプルな用途で使うことで、コードの可読性が向上します。
4. サンプルプログラム
以下のコードをコピーして、ご自身の環境で試してみてください。
public class TernaryExample {
public static void main(String[] args) {
int score = 85;
// if-else文を使うと3行かかる処理を、1行で記述します
// 条件 ? 真の場合の値 : 偽の場合の値
String result = (score >= 80) ? “合格” : “不合格”;
System.out.println(“点数: ” + score + “点 -> 結果: ” + result);
// 応用: 別の変数と比較する場合
int a = 10;
int b = 20;
int max = (a > b) ? a : b; // 大きい方を代入する
System.out.println(“大きい方の値は: ” + max);
}
}
5. 応用・注意点:現場での心得
条件演算子を使う上で、シニアエンジニアとして一つだけ忠告があります。それは「入れ子(ネスト)にしない」ということです。
「条件A ? (条件B ? 値1 : 値2) : 値3」のように演算子の中に演算子を重ねると、コードの見た目が非常に複雑になり、バグの温床となります。
また、条件演算子は「値を返す」ものであるため、メソッドの呼び出しを無理やり詰め込むような使い方も避けましょう。あくまで「シンプルに値を決める」ときだけ使うのが、保守性の高いコードを書くコツです。まずは簡単な代入処理から、積極的に取り入れてみてくださいね。

コメント