[java] double 자료형 계산 오차

자바에서

double형은 사칙연산시 오차가 발생한다. (계산속도를 높이기 위해서라고 함)

무시할수 있을만큼의 작은 수준이지만

긴 소수점을 활용하는 연산에서는 큰 오차가 나게된다. (예를들면 로그변환한 자료형등)

해결방법은 알아두자

BigDecimal이라는 클래스를 쓰면된다.

ex)
System.out.println(new BigDecimal("1.5").multiply(new BigDecimal("0.6")));

반드시 String형을 입력해야 된다.

double형을 전달해주고 싶다면

String.valueof(double형 데이터)

이런식으로 한다.

No comments:

Post a Comment