Long.hashCode() または Double.hashCode() メソッドの呼び出しに置換できるビット演算を報告します。 このインスペクションは xlong 型の変数、または先行する Double.doubleToLongBits() 呼び出しの結果になっているコンストラクト (int)(x ^ (x >>> 32)) を検出します。 この置換によってコードが短縮され、読みやすくなります。

例:


  int result = (int)(var ^ (var >>> 32));

クイックフィックス適用後:


  int result = Long.hashCode(var);

このインスペクションは、プロジェクトまたはモジュールの言語レベルが 8 以上の場合にのみ報告します。

2024.1 の新機能です