【发布时间】:2014-07-26 20:55:28
【问题描述】:
Java 中的 int 和 float 都是 32 位大小的值。是否可以编写一对函数
int toInt(float f);
float toFloat(int n);
如果f1 和f2 是任意的float 非NaN 值并且i1 和i2 是任意的int 值:
-
f1 < f2当且仅当toInt(f1) < toInt(f2) -
f1 > f2当且仅当toInt(f1) > toInt(f2) -
f1 == f2当且仅当toInt(f1) == toInt(f2) toInt(toFloat(i1) == i1toFloat(toInt(f1)) == f1
编辑:我已经编辑了问题以排除浮点数的 NaN 值,这要感谢澄清这些问题的答案。
【问题讨论】: