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 最新变化