Java中实现小数的精确计算

由于所有的数值都要被转化为二进制数,在此期间一定会造成数据的不精确或异常。为此,Java提供了BigDecimal来解决不精确的问题。但是需要注意的是,我们需要选择使用String参数的构造器,才能保证更高的精确。

import java.math.BigDecimal;


public class TestFloat {

    /** * @param args */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println(0.05+0.01);
        BigDecimal bd1=new BigDecimal(0.05);
        BigDecimal bd2=new BigDecimal(0.01);
        System.out.println(bd1.add(bd2));

        BigDecimal bd3=new BigDecimal("0.05");
        BigDecimal bd4=new BigDecimal("0.01");
        System.out.println(bd3.add(bd4));
    }

}

你可能感兴趣的:(java)