BigDecimal原理
一、浮点数的精度问题
对于日常开发过程中出现小数的问题,通常都是使用float或者double类型来处理,在java中float占用四个字节, double类型占用8个字节,简单的从double类型来说,计算机中存储的格式为
位数 |
功能 |
63 |
符号位 |
62 - 52 |
指数位 |
51-0 |
尾数 |
一个浮点数的数值 d = ± 1. f × 2 E − 127 d = \pm1.f \times 2^{E-127} d=±1.f×2E−127
比如一个浮点数1.5,转换成二进制就是1.1,套用上述的公式 f = 1 f=1