gpt4 book ai didi

java - 比较Java中的 float

转载 作者:搜寻专家 更新时间:2023-11-01 04:05:03 24 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Manipulating and comparing floating points in java

我应该在 Java 中比较 float 时使用 Epsilon 吗? Float.compare(float f1, float f2) 静态方法使用安全吗?

谢谢!

编辑:我想我明白了。

当我在 eclipse 中写入 3.6f 时,编译器将此数字解释为 3.6。但是,当我写 1.2f * 3.0f 时,结果是 3.6000001。虽然在数学上这是错误的,但这两个结果显然是不相等的。因此在检查相等性时需要有一个 epsilon。

但是,当我在 eclipse 中写入 0.0f 时,编译器将其严格解释为 0,因为 IEEE 754 能够正确处理它。因此,确保 float 严格为正且 (value > 0.0f) 是正确的。

我看到的唯一问题是计算机不使用 IEEE 754 表示,而是使用不能正确处理 0 的表示。

我说得对吗?

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com