用0除以Java中的无穷或异常?

请看以下代码片段,其中我们将数字除以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,对于类似的除零程序,结果是不同的。区别在于第一程序中使用的浮点运算和第二程序中使用的整数运算。