BigInteger doubleValue() Method in Java (original) (raw)

Last Updated : 4 Dec, 2018

The java.math.BigInteger.doubleValue() converts this BigInteger to a double value. If the value return by this function is too big for a magnitude to represent as a double then it will be converted to Double.NEGATIVE_INFINITY or Double.POSITIVE_INFINITY as appropriate. There is a chance that this conversion can lose information about the precision of the BigInteger value.Syntax:

public double doubleValue()

Return Value: The method returns a double value which represents double value for this BigInteger.Examples:

Input: BigInteger1=32145 Output: 32145.0 Explanation: BigInteger1.doubleValue()=32145.0.

Input: BigInteger1=32145535361361525377 Output: 3.2145535E19 Explanation: BigInteger1.doubleValue()=3.2145535E19. This BigInteger is too big for a magnitude to represent as a double then it will be converted to Double.NEGATIVE_INFINITY or Double.POSITIVE_INFINITY as appropriate.

Below programs illustrate doubleValue() method of BigInteger class:Example 1:

Java `

// Java program to demonstrate doubleValue() method of BigInteger

import java.math.BigInteger;

public class GFG {

public static void main(String[] args)
{

    // Creating 2 BigInteger objects
    BigInteger b1, b2;

    b1 = new BigInteger("32145");
    b2 = new BigInteger("7613721");

    // apply doubleValue() method
    double doubleValueOfb1 = b1.doubleValue();
    double doubleValueOfb2 = b2.doubleValue();

    // print doubleValue
    System.out.println("doubleValue of " + b1 + " : " + doubleValueOfb1);
    System.out.println("doubleValue of " + b2 + " : " + doubleValueOfb2);
}

}

`

Output:

doubleValue of 32145 : 32145.0 doubleValue of 7613721 : 7613721.0

Example 2: When returned double value is too big for a magnitude to represent as a double.

Java `

// Java program to demonstrate doubleValue() method of BigInteger

import java.math.BigInteger;

public class GFG {

public static void main(String[] args)
{

    // Creating 2 BigInteger objects
    BigInteger b1, b2;

    b1 = new BigInteger("32145535361361525377");
    b2 = new BigInteger("7613721535372632367351");

    // apply doubleValue() method
    double doubleValueOfb1 = b1.doubleValue();
    double doubleValueOfb2 = b2.doubleValue();

    // print doubleValue
    System.out.println("doubleValue of " + b1 + " : " + doubleValueOfb1);
    System.out.println("doubleValue of " + b2 + " : " + doubleValueOfb2);
}

}

`