The java.math.BigDecimal.toBigIntegerExact() is an inbuilt method in java that converts this BigDecimal to a BigInteger, checking for lost information. An exception is thrown if this BigDecimal has a nonzero fractional part.
Syntax:
public BigInteger toBigIntegerExact()
Parameters: The method does not take any parameters.
Return value: This method returns the value of BigDecimal object converted to a BigInteger.
Examples:
Input: (BigDecimal) 1213 Output: (BigInteger) 1213 Input: (BigDecimal) 12785412 Output: (BigInteger) 12785412
Below programs illustrates the working of the above mentioned method:
Program 1:
// Program to demonstrate toBigIntegerExact() method of BigDecimal   import java.math.*;   public class gfg {       public static void main(String[] args)     {           // Assigning BigDecimal b         BigDecimal b = new BigDecimal( "1213" );           // Assigning the BigIntegerExact value of BigInteger b to BigInteger i         BigInteger i = b.toBigIntegerExact();           // Printing i value         System.out.println( "BigInteger value of " + b + " is " + i);     } } |
BigInteger value of 1213 is 1213
Program 2:
// Program to demonstrate toBigIntegerExact() method of BigDecimal   import java.math.*;   public class gfg {       public static void main(String[] args)     {           // Assigning BigDecimal b         BigDecimal b = new BigDecimal( "12785412" );           // Assigning the BigIntegerExact value of BigInteger b to BigInteger i         BigInteger i = b.toBigIntegerExact();           // Printing i value         System.out.println( "BigInteger value of " + b + " is " + i);     } } |
BigInteger value of 12785412 is 12785412