Java 中除以 0 时会出现无穷大还是异常?

java programming java 8object oriented programming

请考虑以下代码片段,其中我们将数字除以 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 异常和 ArithmeticException 异常,对于类似的除以零的程序,会产生不同的结果。区别在于第一个程序使用了浮点运算,而第二个程序使用了整数运算。


相关文章