java - 如何检查舍入误差?

标签 java c floating-point

这可能是一个愚蠢的问题:在使用 float 时,会对小数位进行一些舍入,如何在 Java 或 C 中检查舍入错误?任何建议将不胜感激。

最佳答案

好吧,您可以在没有舍入的情况下进行操作,并比较结果。例如,在java中你可以使用Big Decimal在使用 float 执行操作后执行操作...并查看最终是否得到相同的数字。

一个更好的问题是,你为什么要这样做? Float 通常会进行奇怪的循环,您不想在任何需要精度的地方使用它(即银行交易)。在这种情况下,请使用大十进制。但如果您只想在屏幕上表示 3D 点,1.5 舍入到 1.499997 不会改变任何内容...

关于java - 如何检查舍入误差?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3920119/

相关文章:

java - 衬垫 RIPEMD 160

c++ - 如何通过代理服务器环境获取非标准服务?

swift - 避免在受约束的字符集中出现双周期崩溃

c++ - 将 float 组转换为整数的最佳方法。 [为 x64 替换我的 asm 代码]

c++ - 以下代码片段的行为是什么?

java - 如何使用父类(super class)实例在运行时访问子类字段

java - 确认 oauth2 批准流程后,service/oauth/authorize 中的主体为空(approveR Deny 中的 http post)

java - 将 BTree 序列化为文件

c - 递归调和函数返回 NaN

c - 从 DSP C6748 的 Matlab-Simulink 模型生成 C 代码