IT 개발자_S

BigDecimal이란? (필요성) 본문

IT/JAVA

BigDecimal이란? (필요성)

Soso12 2017. 8. 16. 22:22
반응형

BigDecimal의 정의 그리고 필요성.


처음 자바언어 공부를 시작하게되면 데이터 TYPE에 대하여 공부를 하게 됩니다.

정수형은 int를 사용하고 실수형은 float와 double 형으로 정의하여 사용하면 된다.

하지만 단순한 실수 연산을 float와 double형을 이용하여 코드를 작성했는데에도 불구하고 생각과 달리 전혀 다른 결과를 마주 한 경험이 한번 쯤 있었을 것입니다. 

이럴때 이와 같은 문제점을  해결해주는 것이 바로 BigDecimal 클래스입니다.

 

BigDecimal이란 정확한 숫자계산을 위한 클래스입니다. 

java.math 패키지에 포함되어 정확한 계산이 요구되는 정산 프로그램이나 회계 프로그램과 같은 화폐단위를 다루는 프로그램에서 

사용되어 정확한 결과를 도출할 수 있게 도와주는 역할을 하는 클래스라고 할 수 있습니다.


그렇다면 double형을 사용했을때의 계산과 BigDecimal의 사용했을 했을때의 계산차이를 살펴 보겠습니다.

각각  double형과 BigDecimal 에서 초기값 2.0에서 for문으로 4번  0.2를 더해주는 프로그램을 구현해 보겠습니다.

첫번째로는 double형으로 구현했을때의 결과와 

두번째로는 BigDecimal으로 구현했을때의 결과를 비교 해 보겠습니다.


위의 그림과 같이 단순히 double형을 선언하여 계산프로그램을 구현했을때는 정확한 실수 연산이 이루어지지 않는 것에 비해

BigDecimal을 사용하여 계산프로그램을 구현했을때는 실수 연산이 정상적으로 이루어지는 것을 확인 할 수 있습니다.


위와 같은 결과 때문에 화폐단위가 들어가는 계산프로그램을 구현했을때는 잊지말고 

BigDecimal 클래스를 사용하여 구현 하시길 바랍니다!!


반응형
Comments