백엔드/Java
BigDecimal divide 시 에러
infitry
2022. 12. 21. 17:10
반응형
BigDecimal 나눗셈 시 소수점 자릿수가 무한대 일 경우
"Non-terminating decimal expansion; no exact representable decimal result"
오류가 발생한다.
적절하게 scale 처리를 해주어야 한다.
기존 나눗셈 처리시 BigDecimal 의 정적변수 대신 RoundingMode enum 클래스를 사용한다.
bigDecimal.divide(new BigDecimal(3), 3, BigDecimal.ROUND_HALF_UP);
bigDecimal.divide(new BigDecimal(3), 3, RoundingMode.HALF_UP);
반응형