BigDecimal类
我们知道,如果直接通过控制台运算0.1+0.2这类计算,会发现double和float的运算都会有些许误差。
由于float和double类型运算时可能存在误差,所以BigDecimal的作用就体现出来了,它的目的就是为了解决运算之间存在的误差。
使用方法
首先分别创建两个BigDecimal的对象,然后通过调用BigDecimal中的方法对其进行运算,最后方法会返回一个新的BigDecimal对象。
常用构造方法
Public BigDecimal(String val){
//传入的为字符串
}
常用方法
通过调用BigDecimal方法运算,不会影响到运算数据的本身,例如我们先通过A+B然后赋值给A,这样操作是不可以的。
运算的结果只会封装为一个新的BigDecimal对象,这个对象会通过return返回出去。
1, public BigDecimal add (BigDecimal augend) :加法运算
2, public BigDecimal subtract (BigDecimal augend) :减法运算
3, public BigDecimal multiply (BigDecimal augend) :乘法运算
4, public BigDecimal divide (BigDecimal augend) :除法运算
对象转换类型
因为返回为BigDecimal对象,不属于基本类型,所以我们可以调用BigDecimal包含的Value对其进行转换:
BigDecimal b = new BigDecimal("1");
int b = b.intValue();
double b = b.doubleValue();
float b = b.floatValue();
long b = b.longValue();
byte b = b.byteValueExact();