这个java 浮点运算造成的错误,java只能计算整形,浮点计算都是错误的解决办法
在java中提供了专门的API来搞定。。具体怎么搞的我也不知道
用BigDecimal
public class Test {
public static void main(String[] args) {
System.out.println((new BigDecimal("2.0")).subtract(new BigDecimal("1.9")).doubleValue());
}
}
注意只能传String
b1.add(b2).doubleValue();//----加
b1.subtract(b2).doubleValue();//---减
b1.multiply(b2).doubleValue();//---乘
b1.divide(b2,scale,BigDecimal.ROUND_HALF_UP).doubleValue();//---除
注意:除要麻烦点。。。scale 表示表示需要精确到小数点以后几位, 定精度,以后的数字四舍五入。
|