请看以下代码片段,其中我们将数字除以0。
public class Tester{ public static void main(String[] args) { double d = 100; System.out.println(d/0); } }
输出结果
Infinity
现在请看以下代码片段。
public class Tester{ public static void main(String[] args) { int d = 100; System.out.println(d/0); } }
输出结果
Exception in thread "main" java.lang.ArithmeticException: / by zero at Tester.main(Tester.java:5)
正如您已经注意到的,Infinity vs ArithmeticException,对于类似的除零程序,结果是不同的。区别在于第一程序中使用的浮点运算和第二程序中使用的整数运算。