Android下两个double类型相加的问题

来源:互联网 发布:马克斯cms x站 编辑:程序博客网 时间:2024/05/19 03:21

两个小数相加,计算结果是好多位小数点

之前没有注意过,也不知道两个double类型相加有这个问题是在做购物车的时候,两个商品的价格相加之后,对应不上,而且会有好多小数点double a = 88.2;double b = 0.01;double c = a+b;结果c=88.21000000000001一直以为自己是在哪里写错了,终无果。最后上网一查才知道,原来是因为精度问题解决这个问题,就是四舍五入保留两位小数点网上大概有四种解决方法,我都试过,其它三种都不太好用,最后用了下面这种方法double a = 88.2;double b = 0.01;double c = a+b;BigDecimal   bd   =   new   BigDecimal(c);double   d   =   bd.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();System.out.println(d);
2 0