我对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。

07-24 09:45
查看更多