Double的精度问题

来源:互联网 发布:linux切换到命令行 编辑:程序博客网 时间:2024/05/07 14:34

一段代码记住一个Java精度计算实数类:

/***@author 修炼到救赎*@date 2016-03-19 0:00*BigDecimal类的加减乘除方法申明:*public BigDecimal add(BigDecimal augend);*public BigDecimal subtract(BigDecimal subtrahend);*public Bigdecimal multiply(BigDecimal multiplicand);*public Bigdecimal divide(Bigdecimal divisor);*/public class AccuratelyFloat{    public static void main (String[]args){        double money=3;        double price=1.1;        System.out.println("不精确的计算");        System.out.println(money-price);        //精确浮点的解决办法        BigDecimal money0 = new BigDecimal("3");        BigDecimal price0 = new  BigDecimal("1.1");        BigDecimal result = money0.subtract(price0);        System.out.println("精确计算");        System.out.println(result);     }}
0 0
原创粉丝点击