 
		慕的地8271582
2023-02-24 21:32
2.4%2通常理解的话结果应该是0.4
但是在程序里输出之后结果是0.399999999 九循环,想问问是为什么
 
				二进制无法精确表示浮点数的值,计算结果会有精度损失。
在涉及浮点数计算的时候请使用BigDecimal
public static void main(String[] args) {
    BigDecimal a = BigDecimal.valueOf(2.4);
    BigDecimal b = BigDecimal.valueOf(2);
    System.out.println(a.divideAndRemainder(b)[1]);
}Java入门第一季(IDEA工具)
1168089 学习 · 18754 问题
相似问题