Почему целочисленное деление на ноль 1/0 дает ошибку, а с плавающей запятой 1 / 0.0 возвращает «Inf»?

Мне просто любопытно это :

При оценке 1/0 в Java возникает следующее исключение:

Исключение в потоке "main" java.lang.ArithmeticException: / от нуль at Foo.main (Foo.java:3)

Но 1 / 0.0 оценивается как Бесконечность .

public class Foo {
    public static void main (String[] args) {
        System.out.println(1/0.0);
    }
}

Почему это происходит?

28
задан Ciro Santilli 新疆改造中心法轮功六四事件 14 April 2019 в 08:19
поделиться