вторник, 25 июня 2013 г.

Сложение чисел BigDecimal и округление до трех знаков после запятой

BigDecimal one = new BigDecimal("3.123123)";
BigDecimal two = new BigDecimal("2.123123");
one = one.add(two); // сложение
System.out.println(one.setScale(3).toString()); //округление до сотых

1 комментарий:

  1. Есть мнение, что вместе с масштабом округления, хорошо задавать и режим округления (их 8 типов). Например:
    System.out.println(one.setScale(3,BigDecimal.ROUND_HALF_UP).toString());
    Иначе могут быть исключения:
    bd = new BigDecimal(1.5); // на самом деле 1.4999....
    bd.setScale(1); // получаем исключение ArithmeticException

    ОтветитьУдалить