【发布时间】:2020-03-20 10:02:48
【问题描述】:
我正在尝试在程序下方运行并期待Arithmetic Exception,因为我们是dividing double value by zero but getting Infinity as output。
这是下面的程序。 But if we are using int instead of double then getting Arithmetic Exception
public static void main(String z[]) {
Double a = 10.0;
Double b = 0.0;
System.out.println(a/b);
}
输出:Infinity
public static void main(String z[]) {
int a = 10;
int b = 0;
System.out.println(a/b);
}
输出:
Exception in thread "main" java.lang.ArithmeticException: / by zero
at (Test.java:94)
谁能解释一下为什么我们要为 Double 获得 Infinity 价值?
【问题讨论】:
-
@AndyTurner 这种行为可能也与浮点运算不精确有关吗?
标签: java