From e4154b4f53ef29cf3d6596d5dbeeaf64e7f509f9 Mon Sep 17 00:00:00 2001 From: Lincoln Maxwell <60242131+lllincoln@users.noreply.github.com> Date: Fri, 26 Jun 2026 06:47:55 -0400 Subject: [PATCH] Improve readability by using Double and Long hashCode functions instead of inlining --- gson/src/main/java/com/google/gson/JsonPrimitive.java | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/gson/src/main/java/com/google/gson/JsonPrimitive.java b/gson/src/main/java/com/google/gson/JsonPrimitive.java index 88f4466fc8..1b3bd61067 100644 --- a/gson/src/main/java/com/google/gson/JsonPrimitive.java +++ b/gson/src/main/java/com/google/gson/JsonPrimitive.java @@ -262,14 +262,11 @@ public int hashCode() { if (value == null) { return 31; } - // Using recommended hashing algorithm from Effective Java for longs and doubles if (isIntegral(this)) { - long value = getAsNumber().longValue(); - return (int) (value ^ (value >>> 32)); + return Long.hashCode(getAsNumber().longValue()); } if (value instanceof Number) { - long value = Double.doubleToLongBits(getAsNumber().doubleValue()); - return (int) (value ^ (value >>> 32)); + return Double.hashCode(getAsNumber().doubleValue()); } return value.hashCode(); }