diff --git a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/linear/BigReal.java b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/linear/BigReal.java index 744fe1b68a..6450e56a2b 100644 --- a/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/linear/BigReal.java +++ b/commons-math-legacy/src/main/java/org/apache/commons/math4/legacy/linear/BigReal.java @@ -323,7 +323,7 @@ public boolean equals(Object other) { /** {@inheritDoc} */ @Override public int hashCode() { - return d.hashCode(); + return Double.hashCode(d.doubleValue()); } /** {@inheritDoc} */ diff --git a/commons-math-legacy/src/test/java/org/apache/commons/math4/legacy/linear/BigRealTest.java b/commons-math-legacy/src/test/java/org/apache/commons/math4/legacy/linear/BigRealTest.java index 9c2540443d..f02741b7a9 100644 --- a/commons-math-legacy/src/test/java/org/apache/commons/math4/legacy/linear/BigRealTest.java +++ b/commons-math-legacy/src/test/java/org/apache/commons/math4/legacy/linear/BigRealTest.java @@ -178,6 +178,7 @@ public void testEqualsAndHashCode() { BigReal oneWithScaleOne = new BigReal(new BigDecimal("1.0")); BigReal oneWithScaleTwo = new BigReal(new BigDecimal("1.00")); Assert.assertEquals(oneWithScaleOne, oneWithScaleTwo); + Assert.assertEquals(oneWithScaleOne.hashCode(), oneWithScaleTwo.hashCode()); } @Test