java - Java 中的 float、double 和 int 数学

标签 java math floating-point int double

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

相关文章:

Java 中的 Java 泛型方法调用

javascript - 选择两种颜色并获得介于两者之间的 n 种颜色

c - 如何防止 float/double 格式说明符自动更改 C 中的小数值?

java - 如何在 Java 中查询 OrientDB 数据库的顶点?

java线程同步问题

java - 最新 FLP api 客户端构建期间的 Android AR Core 异常。回归传统

c# - 计算具有步长的图表的轴刻度

javascript - Javascript 中的 gluProject 等效项

Java List.contains 具有 double 和公差的对象

math - float 学有问题吗?