Задать вопрос
@gsaw

Почему может BiDecimal.precision равняться нулю?

Java 11

В коде получаю строку, к примеру "1234", конвертирую ее к BigDecimal("1234"). Потом вызваю

ret = ret.setScale(3, RoundingMode.HALF_DOWN)

После чего ret.precision() возвращает 0.

unscaledValue возвращает 1234000.

Мне нужно проверить входные данные, влезут ли они в базу данных, не обрежутся ли. Думал проверить precision, а оно равно 0. Получается надо проверить

ret.unscaledValue().toString().length() <= заданные precision+scale ?


как то странно
  • Вопрос задан
  • 32 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы