Long.hashCode() 或 Double.hashCode() 方法的调用的按位运算。
它会检测构造 (int)(x ^ (x >>> 32)),其中 x 是类型为 long 的变量,或者是前一个 Double.doubleToLongBits() 调用的结果。 此替换可以缩短代码,提高代码的可读性。
示例:
int result = (int)(var ^ (var >>> 32));
应用该快速修复后:
int result = Long.hashCode(var);
仅当项目或模块的语言级别为 8 或更高时,此检查才会报告。
2024.1 最新变化