ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JAVA] BigDecimal 사칙연산과 Non-terminating decimal expansion; no exact representable decimal result
    JAVA 2021. 6. 23. 16:36

    BigDecimal number1 = new BigDecimal("250.125");

    BigDecimal number2 = new BigDecimal("150.352");

     

    더하기 : number1.add(number2);

    빼기 : number1.subtract(number2);

    곱하기 : number1.multiply(number2);

    나누기 : 

              올림 - number1.divide(number2 , 2(소수점자리수), BigDecimal.ROUND_UP);

              버림 - number1.divide(number2 , 4, BigDecimal.ROUND_DOWN);

              반올림 - number1.divide(number2 , 3, BigDecimal.ROUND_HALF_UP);

              반내림 - number1.divide(number2 , 1, BigDecimal.ROUND_HALF_DOWN);

     

    BigDecimal 나누기를 할 경우 정확히 값이 떨어지지 않으면

    " Non-terminating decimal expansion; no exact representable decimal result "

    에러가 발생된다.

    그렇기에, 나누기 할 때는 소수점 처리를 해줘야 한다.

     

    'JAVA' 카테고리의 다른 글

    [JAVA] BigDecimal 사용 이유와 비교하는 방법  (0) 2021.06.22

    댓글

Designed by Tistory.