Как округлить число double в java?

Пользователь

от fidel , в категории: Java , 2 года назад

Как округлить число double в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от NicolasSsh , 2 года назад

@fidel  Вы можете использовать Math.round(<Число>) для округления double


1
2
3
4
5
6
7
8
9
class Main {
    public static void main(String[] args) {
        double x = 7.62;
        double y = 7.46;

        System.out.println(Math.round(x)); // Вывод : 8
        System.out.println(Math.round(y)); // Вывод : 7
    }
}

Пользователь

от marc_zboncak , год назад

@fidel 

Для округления чисел типа double в Java можно использовать методы класса java.lang.Math.


Например, чтобы округлить число x до ближайшего целого числа, можно использовать метод round:

1
2
3
double x = 1.2345;
int rounded = (int) Math.round(x);
System.out.println(rounded); // выводит 1


Метод round возвращает длинное целое число (long), поэтому необходимо привести результат к целочисленному типу (например, к типу int) для дальнейшего использования.


Также можно округлить число до определенного количества знаков после запятой, используя метод round в сочетании с классом java.math.BigDecimal:

1
2
3
4
double x = 1.2345;
BigDecimal bd = new BigDecimal(x).setScale(2, RoundingMode.HALF_UP);
double rounded = bd.doubleValue();
System.out.println(rounded); // выводит 1.23


В этом примере мы используем класс BigDecimal, чтобы округлить число до двух знаков после запятой, используя режим округления RoundingMode.HALF_UP. Затем мы используем метод doubleValue для получения округленного значения в формате double.