Learn Java The Hard Way

Java 浮点运算

2018-10-24  本文已影响9人  几千里也
import java.math.BigDecimal;

public class Main {
    public static void main(String[] args) {
        // 二进制只能表示 2 的某次方,浮点运算不精准。
        System.out.println("0.1 * 0.1: " + (0.1f * 0.1f));

        // 为了精准可以使用 BigDecimal
        BigDecimal b1 = new BigDecimal(0.1);
        BigDecimal b2 = new BigDecimal(0.1);
        System.out.println("0.1 * 0.1: " + b1.multiply(b2).floatValue());
    }
}

输出:

0.1 * 0.1: 0.010000001
0.1 * 0.1: 0.01
上一篇下一篇

猜你喜欢

热点阅读