BigDecimal类longValueExact()方法 (BigDecimal Class longValueExact() method)
longValueExact() method is available in java.math package.
longValueExact()方法在java.math包中可用。
longValueExact() method is used to convert this BigDecimal to an exact long value. When this BigDecimal holds a fractional part other than 0 or not in a range to represent long then ArithmeticException is thrown.
longValueExact()方法用于将此BigDecimal转换为确切的long值。 当此BigDecimal的小数部分不为0或不在表示long的范围内时,则抛出ArithmeticException。
longValueExact() 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.
longValueExact()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
longValueExact() method may throw an exception at the time of converting BigDecimal to the long.
在将BigDecimal转换为long时, longValueExact()方法可能会引发异常。
ArithmeticException: This exception may throw when this BigDecimal holds a fractional part that is other than 0 or the resulting value is not enough to adjust in a long.
ArithmeticException :当此BigDecimal包含一个非0的小数部分或所得到的值不足以长时间调整时,可能会引发此异常。
Syntax:
句法:
public long longValueExact();
Parameter(s):
参数:
It does not accept any parameter.
它不接受任何参数。
Return value:
返回值:
The return type of this method is long, it gets the long representation of this BigDecimal.
此方法的返回类型为long ,它获取此BigDecimal的long表示形式。
Example:
例:
// Java program to demonstrate the example
// of long longValueExact() method of BigDecimal
import java.math.*;
public class LongValueExactOfBD {
public static void main(String args[]) {
// Initialize two variables first is
// of "float" and second is of "String"
// type
float val = 11562387.23f;
String str = "100";
// Initialize two BigDecimal objects
BigDecimal b_dec1 = new BigDecimal(val);
BigDecimal b_dec2 = new BigDecimal(str);
// convert this BigDecimal (b_dec1) into
// a exact long, variable named l_conv
long l_conv = b_dec1.longValueExact();
System.out.println("b_dec1.longValueExact(): " + l_conv);
// convert this BigDecimal (b_dec2) into
// a exact long, variable named l_conv
l_conv = b_dec2.longValueExact();
System.out.println("b_dec2.longValueExact(): " + l_conv);
}
}
Output
输出量
b_dec1.longValueExact(): 11562387
b_dec2.longValueExact(): 100
翻译自: https://www.includehelp.com/java/bigdecimal-longvalueexact-method-with-example.aspx