double 类型运算会出现精度问题

要先转换为字符串,后进行运算,可以写个方法做乘法运算
public static double mul(double v1,double v2){
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.multiply(b2).doubleValue();
}
加法: return b1.add(b2).doubleValue();
减法: return b1.subtract(b2).doubleValue();

原文地址:https://www.cnblogs.com/beijingstruggle/p/5671378.html