为什么我的Java应用程序中的结果为"0"?

Fra*_*ank 0 java floating-point

我尝试了以下操作:

728660000f-728659968f
Run Code Online (Sandbox Code Playgroud)

这是float中的减号操作,最终为"0",为什么?

use*_*031 5

这两个值不能完全表示为单精度浮点数,并且从整数转换它们时得到的近似值会导致两个值具有相同的值.因此,减去它们会产生0.