import java.math.BigDecimal;
public class BigDecimalToLongExample {
public static void main(String[] args) {
// 创建一个BigDecimal对象
BigDecimal bigDecimal = new BigDecimal("123456789.12345");
// 使用longValue()方法将BigDecimal转换为long类型
long longValue = bigDecimal.longValue();
// 输出转换后的long值
System.out.println("BigDecimal转long: " + longValue);
// 使用longValueExact()方法将BigDecimal转换为long类型,如果超出long范围会抛出异常
try {
long longValueExact = bigDecimal.longValueExact();
System.out.println("BigDecimal转long (精确): " + longValueExact);
} catch (ArithmeticException e) {
System.out.println("BigDecimal的值超出了long的范围");
}
}
}
bigDecimal.longValue()
:此方法将 BigDecimal
转换为 long
类型。它不会检查是否丢失了精度,可能会导致数据丢失。bigDecimal.longValueExact()
:此方法将 BigDecimal
转换为 long
类型,并且会检查是否有精度丢失。如果有精度丢失或超出 long
的范围,则会抛出 ArithmeticException
异常。通过这两个方法,你可以根据需求选择适合的方式来将 BigDecimal
转换为 long
。
上一篇:java中的string类型
下一篇:java的输入语句怎么写
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站