Java中的 BigDecimal longValue() 方法
Java.math.BigDecimal.longValue()是一个内置函数,可将此BigDecimal 转换为 long 值。此函数丢弃此BigDecimal 的任何小数部分。当转换结果太大而无法表示为 long 值时,该函数仅返回低 64 位。
句法:
public long longValue()
参数:此函数不接受任何参数。
返回值:此函数返回此BigDecimal 的 long 值。
例子:
Input : 1987812456121.176
Output : 1987812456121
Input : "721111"
Output : 721111
下面的程序说明了Java.math.BigDecimal.longValue() 方法的使用:
方案一:
// Java program to illustrate
// longValue() method
import java.math.*;
import java.io.*;
class GFG {
public static void main(String[] args)
{
// Creating 2 BigDecimal Objects
BigDecimal b1, b2;
// Assigning values to b1, b2
b1 = new BigDecimal("1987812456121.176");
b2 = new BigDecimal("721111");
// Displaying their respective Long Values
System.out.println("The Long Value of " + b1 +
" is " + b1.longValue());
System.out.println("The Long Value of " + b2 +
" is " + b2.longValue());
}
}
输出:
The Long Value of 1987812456121.176 is 1987812456121
The Long Value of 721111 is 721111
注意:有关大this BigDecimal 值的总体幅度和精度的信息可能会在此函数的转换过程中丢失。因此,可能会返回带有相反符号的结果。
程序 2:下面的程序说明了函数返回带有相反符号的结果的场景。
// Java program to illustrate
// longValue() method
import java.math.*;
import java.io.*;
class GFG {
public static void main(String[] args)
{
// Creating 2 BigDecimal Objects
BigDecimal b1, b2;
// Assigning values to b1, b2
b1 = new BigDecimal("267694723232435121868");
b2 = new BigDecimal("72111184561789104423");
// Displaying their respective Long Values
System.out.println("The Long Value of " + b1 +
" is " + b1.longValue());
System.out.println("The Long Value of " + b2 +
" is " + b2.longValue());
}
}
输出:
The Long Value of 267694723232435121868 is -9006437873208152372
The Long Value of 72111184561789104423 is -1675791733049102041
参考: https: Java/math/BigDecimal.html#longValue()