Back to Intellij Community

UseHashCodeMethodInspection

java/java-impl/resources/inspectionDescriptions/UseHashCodeMethodInspection.html

2025.3-rc-2572 B
Original Source

Reports bitwise operations that can be replaced with a call to the Long.hashCode() or Double.hashCode() methods. It detects the construct (int)(x ^ (x >>> 32)) where x is a variable of type long or the result of a previous Double.doubleToLongBits() call. The replacement shortens the code, improving its readability.

Example:

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

After applying the quick-fix:

int result = Long.hashCode(var);

This inspection only reports if the language level of the project or module is 8 or higher.

New in 2024.1