我对 Java 中的数学有一些疑问/疑问,所以我制作了一个小程序,您可以在此链接中看到其屏幕截图:
http://www.imageshuffle.com/view.php?filename=73doublevsfloat.jpg
这样的数字怎么可能呢?
f/i
应该是 0.0155
无论你怎么看
无论你怎么看,i * f
都应该是 155
i + f
应为 101.55
i - f
应为 98.45
等等。与双倍相同。
那么什么给出呢?为什么 Java 中的数学如此不正确?
最佳答案
发生这种情况是因为 i/= f
修改了 i
:它相当于 i = i/f
(加上舍入)。
因此,当您执行 f/i
时,i
约为 65,而不是 100。
关于java - Java 中的 float、double 和 int 数学,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4540497/