将 int 除以零会抛出异常,但 float 不会 - 至少在 Java 中是这样。为什么 float 有额外的 NaN 信息,而 int 类型没有?
最佳答案
float 的表示被设计为保留一些特殊的位组合来存储 special values例如NaN、无穷大等。
int 类型没有未使用的表示 - 每个位模式都对应一个整数。这有很多优点:
- 整数类型的范围尽可能大 - 不会浪费位模式。
- 整数的表示很容易理解,因为没有特殊情况。
- 即使在非常简单的处理器上也可以以极高的速度完成整数运算。
关于c# - 除以零 : int vs. float,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4480020/