Java | ネストと複合条件のどちらを選ぶべきか

Java Java
スポンサーリンク

ネストと複合条件のどちらを選ぶべきか:書き方の工夫

if文は「条件分岐」を書くための基本ですが、ネスト(入れ子)複合条件(&&||のどちらを使うかでコードの読みやすさが大きく変わります。


ネストを選ぶとき

  • 段階的に条件を絞り込みたいとき
    → 「まず大きな条件を確認して、その中でさらに細かい条件を判定する」流れが自然。
  • 条件ごとに異なる処理をしたいとき
    → 外側の条件がtrueなら、内側でさらに分岐する。

例:成績判定(段階的に判定)

if (score >= 70) {
    if (homeworkSubmitted) {
        System.out.println("合格");
    } else {
        System.out.println("宿題未提出なので不合格");
    }
} else {
    System.out.println("点数不足で不合格");
}
Java

👉 「点数が合格ラインかどうか」をまず判定し、その中で「宿題提出済みかどうか」をさらに判定。
読み手に“段階的な流れ”を伝えたいときはネストがわかりやすい。


複合条件を選ぶとき

  • 条件を一度にまとめて判定したいとき
    → 「両方の条件を満たすなら〜」のように、シンプルに書ける。
  • 処理が単純で、条件が複雑すぎないとき
    → ネストを避けてコードを短くできる。

例:成績判定(複合条件でまとめる)

if (score >= 70 && homeworkSubmitted) {
    System.out.println("合格");
} else {
    System.out.println("不合格");
}
Java

👉 ネストを使わずに「点数と宿題提出」を一度に判定。
条件がシンプルなら複合条件の方が読みやすい。


使い分けの指針

状況ネストを使う複合条件を使う
段階的に条件を確認したい
条件が複雑で処理が多い
条件がシンプルで処理が少ない
読み手に「流れ」を伝えたい
短くスッキリ書きたい

書き方の工夫

  • ネストが深くなりすぎると読みにくい → 複合条件にまとめるか、メソッドに切り出す。
  • 複合条件が長くなりすぎると理解しづらい → ネストに分けて「段階的に説明」する。
  • 可読性を優先 → 「自分が後で読んだときに理解しやすいか」を基準に選ぶ。

✅ まとめ

  • 流れを強調したいならネスト
  • シンプルに書けるなら複合条件
  • どちらを選ぶかは“読みやすさ”が最優先
Java
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました