四舍五入精确算法 遇到5(有时)不进位的问题

我之前也是用的这个但是有的时候遇到5不是四舍五入

f 是传过来的Double类型

BigDecimal d = new BigDecimal(f);

double e = d.setScale(1, RoundingMode.HALF_UP).doubleValue();

下面就用String去构造就可以精确到每一位了这样我的问题就解决了

解决方案:

BigDecimal d = new BigDecimal(Double.toString(f));

double e = d.setScale(1, RoundingMode.HALF_UP).doubleValue();


希望能够帮助大家!!! 

有问题可以留言!!

大家一起学习!!!

你可能感兴趣的:(Android)