当我写类似下面的内容时:
double a = 0.0;
double b = 0.0;
double c = a/b;
结果是Double.NaN
,但当我对整数进行相同的操作时,它会产生一个ArithmeticException
。那么,为什么没有Integer.NaN
呢?
NaN
值,并且符合规范的实现必须正确处理它,而整数实现则没有这样的规范,并且没有办法明确地表示“无效值”。相关链接,相关链接2。 - Benjamin Gruenbaum