Home »
Java »
Java Reference »
Java BigDecimal Class
Java BigDecimal toBigIntegerExact() Method with Example
BigDecimal Class toBigIntegerExact() method: Here, we are going to learn about the toBigIntegerExact() method of BigDecimal Class with its syntax and example.
Submitted by Preeti Jain, on May 07, 2020
BigDecimal Class toBigIntegerExact() method
- toBigIntegerExact() method is available in java.math package.
- toBigIntegerExact() method is used to convert this BigDecimal into the exact BigInteger value and it will throw an exception when this BigDecimal holds some fractional part that is other than 0.
- toBigIntegerExact() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.
- toBigIntegerExact() method may throw an exception at the time of converting this object into BigInteger.
ArithmeticException: This exception may throw when this BigDecimal object holds a decimal part that is other than 0.
Syntax:
public BigInteger toBigIntegerExact();
Parameter(s):
- It does not accept any parameter.
Return value:
The return type of this method is BigInteger, it returns the exact conversion of this BigDecimal object value to a BigInteger value.
Example:
// Java program to demonstrate the example
// of BigInteger toBigIntegerExact() method of BigDecimal
import java.math.*;
public class ToBigIntegerExactOfBD {
public static void main(String args[]) {
// Initialize two variables - double and
// String type
double val = 1234521.0;
String str = "1211124";
// Initialize two BigDecimal objects
BigDecimal b_dec1 = new BigDecimal(val);
BigDecimal b_dec2 = new BigDecimal(str);
/* In this method it throws an exception
when we pass any non-zero value after
decimal in this BigDecimal */
// converts this BigDecimal b_dec1 value into
// an exact BigInteger value, and store the result
// in a variable named b_int_conv
BigInteger b_int_conv = b_dec1.toBigIntegerExact();
System.out.println("b_dec1.toBigIntegerExact(): " + b_int_conv);
// converts this BigDecimal b_dec2 value into
// an exact BigInteger value, and store the result
// in a variable named b_int_conv
b_int_conv = b_dec2.toBigIntegerExact();
System.out.println("b_dec2.toBigIntegerExact(): " + b_int_conv);
}
}
Output
b_dec1.toBigIntegerExact(): 1234521
b_dec2.toBigIntegerExact(): 1211124