我编译了错误地尝试添加数字和 Double.NaN 的代码。我想知道它是否抛出了一个没有被捕获的异常?有谁知道这种情况是如何处理的?
谢谢。
问问题
7474 次
3 回答
7
将一个数字添加到 NaN 会得到 NaN。预计不会导致异常。我知道这符合 IEEE 754。
于 2008-12-12T14:52:08.300 回答
1
回答史蒂夫 B 的问题:
POSITIVE_INFINITY 是您可以存储的最大正数,如果您有无限的存储空间。如果没有这种奢侈,我们必须使用像 1.0 / 0.0 这样的结构,它做得很好。NEGATIVE_INFINITY 也是如此,但最大的负数也是如此。
NaN 通常定义为 0.0 / 0.0,因为没有像 0/0 这样的数字,因此完全符合 NaN 的要求。
于 2008-12-12T15:09:24.240 回答
0
public static void main(String args[])
{
Double d = Double.NaN + 1.0;
System.out.println(d);
}
打印 Double.Nan。谁能解释源代码实现?
public static final double POSITIVE_INFINITY = 1.0 / 0.0;
public static final double NEGATIVE_INFINITY = -1.0 / 0.0;
public static final double NaN = 0.0d / 0.0;
于 2008-12-12T14:55:42.303 回答