为什么要用BigDecimal
- 原因很简单,因为像一些精准的数字基本类型没有办法满足
代码1
double num1 = 1.0;
double num2 = 0.9;
System.out.println((num1-num2));
- 按照正常思维,1减去0.9应该是0.1才对,但是这里double结果却输出了一个相近的近似值
- 所以我们可以发现double类型不适合一些精准的数据计算,例如银行的计算
- 所以我们就需要用到BigDecimal这个类的算法
BigDecimal
- 位置:java.math包下
- 作用:精准计算浮点数
- 创建方式:Bigdecimal name = new BigDecimal(“1.0”) (注意是字符串类型,因为BigDecimal会使用一些算法让他转换为数字)
- 方法:add(name)//加
- subtract(name)//减
- multiply(name)//乘
- devide(name)//除
注意,如果不想一开始就创建数字,就必须在式子中实例化这个东西,等下会看到
package blogtest.oop2.bigdecimal;
import java.math.BigDecimal;
public class Demo01 {
public static void <