近日在工作中使用double类型相加,发现结果精度出现问题。
百度验证后得到答案,特此记录。
double类型数据相加的时候直接使用+号,得到的结果会出现精度误差
所以需要使用BigDecimal函数进行运算
double v1 = 4.5;
double v2 = 4.55;
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
double sum= b1.add(b2).doubleValue();