目录
Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数,实际应用中可能需要对更大或者更小的数进行运算和处理。Double.valueOf(String)和Float.valueOf(String)会丢失精度,一般情况下,对于不需要准确计算精度的数字使用Float和Double处理,需要精确计算的则使用BigDecimal类来操作。
BigDecimal构造函数
BigDecimal(int)
创建一个具有参数所指定整数值的对象。
BigDecimal(double)
创建一个具有参数所指定双精度值的对象。
BigDecimal(long)
创建一个具有参数所指定长整数值的对象。
BigDecimal(String)
创建一个具有参数所指定以字符串表示的数值的对象。
BigDecimal a =new BigDecimal(0.1);
System.out.println("a values is:"+a);
System.out.println("=====================");
BigDecimal b =new BigDecimal("0.1");
System.out.println("b values is:"+b);
结果:<
本文详细介绍了Java中BigDecimal类的使用,包括构造函数、常用方法如加减乘除,异常处理,以及如何进行数值格式化。特别指出,使用double构造BigDecimal可能导致精度丢失,推荐使用String构造方法以确保精度。此外,还提到了BigDecimal在除法操作时可能出现的非终止小数异常及其解决方案。
订阅专栏 解锁全文
11万+

被折叠的 条评论
为什么被折叠?



