BigDecimal类的toBigIntegerExact()方法 (BigDecimal Class toBigIntegerExact() method)
toBigIntegerExact() method is available in java.math package.
toBigIntegerExact()方法在java.math包中可用。
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()方法用于将此BigDecimal转换为确切的BigInteger值,并且当此BigDecimal持有非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()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
toBigIntegerExact() method may throw an exception at the time of converting this object into BigInteger.
在将此对象转换为BigInteger时, toBigIntegerExact()方法可能会引发异常。
ArithmeticException: This exception may throw when this BigDecimal object holds a decimal part that is other than 0.
ArithmeticException :当此BigDecimal对象包含非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.
此方法的返回类型为BigInteger ,它将此BigDecimal对象值精确转换为BigInteger值。
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
翻译自: https://www.includehelp.com/java/bigdecimal-tobigintegerexact-method-with-example.aspx