我有以下代码:
public static void main(String[] args) {
try {
int d1 = 3;
int d2 = 0;
int d = d1/d2;
} catch (Exception ex) {
System.out.println("Exception");
}
}
当这段代码运行时,很明显会出现异常。 但是,如果我按如下方式更改代码:
public static void main(String[] args) {
try {
double d1 = 3;
double d2 = 0;
double d = d1/d2;
} catch (Exception ex) {
System.out.println("Exception");
}
}
然后异常不会抛出。我真的不明白。 请问有人可以详细说明一下吗?
最佳答案
因为 double 除以 0.0 将产生 NAN 或 +/- 无穷大,这并不异常(exception)。
关于java - 关于Java中捕获异常的问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5963247/