Java | 実務で安全にインクリメント/デクリメントを使うための最善の方法

Java Java
スポンサーリンク

インクリメント/デクリメントのベストプラクティス集

実務で安全にインクリメント/デクリメントを使うためのベストプラクティス集を整理しました。


1. ループのカウンタは i++ に統一

  • for (int i = 0; i < n; i++) が最も読みやすく、慣例的に使われる。
  • ++i でも動作は同じだが、チーム開発では「見慣れた書き方」が重要。

2. 条件式に直接書かない

  • while (i++ < n) のように条件式に入れると挙動が分かりにくい。
  • 安全策: 条件とインクリメントは分けて書く。
while (i < n) {
    // 処理
    i++;
}
Java

3. 配列アクセスは意図を明確に

  • arr[i++] → 今の要素を使ってから次へ
  • arr[++i] → 次の要素に進んでから使う

👉 初心者やチーム開発では「どちらを意図しているか」が一目で分かるようにコメントや変数分割を推奨。


4. 複雑な式に埋め込まない

  • int x = a++ + ++a + a--; のような書き方は可読性が低く、バグの温床。
  • ベストプラクティス: 1行ずつ分けて書く。
a++;
int x = a;
a++;
Java

5. 小さい型(byte, short)では避ける

  • byte b = 127; b++; → -128 に戻る(オーバーフロー)。
  • 実務では基本的に int を使うのが安全。

6. 副作用を最小化する

  • if (arr[i++] == 100) のように「条件判定」と「インクリメント」を同時に行うと混乱しやすい。
  • ベストプラクティス: 先に変数に代入してから判定。
int value = arr[i];
i++;
if (value == 100) { ... }
Java

7. コードレビューで統一ルールを決める

  • 「ループは i++ を使う」
  • 「条件式に ++/– を書かない」
  • 「複雑な式に埋め込まない」

👉 チームでルールを共有しておくと、読みやすさと安全性が保たれる。


まとめ

  • ループは i++ に統一
  • 条件式や複雑な式に埋め込まない
  • 配列アクセスは意図を明確に
  • 小さい型では避ける
  • チームでルールを決める

💡 実務では「動くコード」より「読みやすいコード」が評価されます。
インクリメント/デクリメントは便利ですが、“シンプルに書く”ことが最大の安全策です。

Java
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました