Разве обычно, когда мы включаем два числовых типа данных в одно выражение, тот, у которого меньше битов, преобразуется в тот, у которого больше битов? Например, если у нас есть: Integer.MAX_VALUE+0.6, оно преобразуется в двойное.
Я попробовал
и это дает мне Integer.MIN_VALUE; Это означает, что Long.MAX_VALUE преобразуется в Integer.MAX_VALUE, а затем произошло переполнение. Таким образом, в основном тип данных long превращается в int. Хотя даже параметр Math.round по определению является двойным. Таким образом, Integer в данном случае даже не является случаем по умолчанию. Я не знаю, в чем я ошибаюсь.
Подробнее здесь:
https://stackoverflow.com/questions/788 ... -min-value