Java浮点模错误
我的机器上的输出是1.0000002Java浮点模错误,java,Java,我的机器上的输出是1.0000002 为什么? 首先,如何将浮点值声明为变量 float a = (float) 3.32 ; float b = (float) 4.32 ; System.out.println(b%a); 关于你的结果。 这是浮点的典型特性 如何得到正确答案?这样试试 float val=3.23f; 输出: BigDecimal a = new BigDecimal("3.32") ; BigDecimal b = new BigDec
为什么? 首先,如何将浮点值声明为变量
float a = (float) 3.32 ;
float b = (float) 4.32 ;
System.out.println(b%a);
关于你的结果。
这是浮点
的典型特性
如何得到正确答案?这样试试
float val=3.23f;
输出:
BigDecimal a = new BigDecimal("3.32") ;
BigDecimal b = new BigDecimal("4.32") ;
System.out.println(b.divideAndRemainder(a)[1]); // 1st element is remainder
您可能需要阅读浮点类型本质上是不精确的。像这样的小错误是不可避免的。请看和@downvoter,看不到您的评论。我已向上投票支持风水:)
1