BigReal implements FieldElement<BigReal>, Comparable<BigReal>, Serializable { public double doubleValue() { return d.doubleValue(); } BigReal(BigDecimal val);  BigReal(BigInteger val);  BigReal(BigInteger unscaledVal, int scale);  BigReal(BigInteger unscaledVal, int scale, MathContext mc);  BigReal(BigInteger val, MathContext mc);  BigReal(char[] in);  BigReal(char[] in, int offset, int len);  BigReal(char[] in, int offset, int len, MathContext mc);  BigReal(char[] in, MathContext mc);  BigReal(double val);  BigReal(double val, MathContext mc);  BigReal(int val);  BigReal(int val, MathContext mc);  BigReal(long val);  BigReal(long val, MathContext mc);  BigReal(String val);  BigReal(String val, MathContext mc); RoundingMode getRoundingMode(); void setRoundingMode(RoundingMode roundingMode); int getScale(); void setScale(int scale); BigReal add(BigReal a); BigReal subtract(BigReal a); BigReal negate(); BigReal divide(BigReal a); BigReal reciprocal(); BigReal multiply(BigReal a); BigReal multiply(final int n); int compareTo(BigReal a); double doubleValue(); BigDecimal bigDecimalValue(); @Override boolean equals(Object other); @Override int hashCode(); Field<BigReal> getField(); static final BigReal ZERO; static final BigReal ONE; }
@Test public void testConstructor() { Assert.assertEquals(1.625, new BigReal(new BigDecimal("1.625")).doubleValue(), 1.0e-15); Assert.assertEquals(-5.0, new BigReal(new BigInteger("-5")).doubleValue(), 1.0e-15); Assert.assertEquals(-5.0, new BigReal(new BigInteger("-5"), MathContext.DECIMAL64) .doubleValue(), 1.0e-15); Assert .assertEquals(0.125, new BigReal(new BigInteger("125"), 3).doubleValue(), 1.0e-15); Assert.assertEquals(0.125, new BigReal(new BigInteger("125"), 3, MathContext.DECIMAL64) .doubleValue(), 1.0e-15); Assert.assertEquals(1.625, new BigReal(new char[] { '1', '.', '6', '2', '5' }).doubleValue(), 1.0e-15); Assert.assertEquals(1.625, new BigReal(new char[] { 'A', 'A', '1', '.', '6', '2', '5', '9' }, 2, 5).doubleValue(), 1.0e-15); Assert.assertEquals(1.625, new BigReal(new char[] { 'A', 'A', '1', '.', '6', '2', '5', '9' }, 2, 5, MathContext.DECIMAL64).doubleValue(), 1.0e-15); Assert.assertEquals(1.625, new BigReal(new char[] { '1', '.', '6', '2', '5' }, MathContext.DECIMAL64).doubleValue(), 1.0e-15); Assert.assertEquals(1.625, new BigReal(1.625).doubleValue(), 1.0e-15); Assert.assertEquals(1.625, new BigReal(1.625, MathContext.DECIMAL64) .doubleValue(), 1.0e-15); Assert.assertEquals(-5.0, new BigReal(-5).doubleValue(), 1.0e-15); Assert.assertEquals(-5.0, new BigReal(-5, MathContext.DECIMAL64) .doubleValue(), 1.0e-15); Assert.assertEquals(-5.0, new BigReal(-5l).doubleValue(), 1.0e-15); Assert.assertEquals(-5.0, new BigReal(-5l, MathContext.DECIMAL64) .doubleValue(), 1.0e-15); Assert.assertEquals(1.625, new BigReal("1.625").doubleValue(), 1.0e-15); Assert.assertEquals(1.625, new BigReal("1.625", MathContext.DECIMAL64) .doubleValue(), 1.0e-15); }
@Test public void testDoubleValue() { Assert.assertEquals(0.5, new BigReal(0.5).doubleValue(), 1.0e-15); }