1. java.math.BigDecimal class
- BigDecimal은 실수형과 달리 정수를 이용해서 실수를 표현한다.
- 앞에서 배운 것과 같이 실수의 오차는 10진수 실수를 2진수로 정확히 변환할 수 없는 경우가 있기 때문에
발생하는 것이므로, 이 클래스를 이용해서 오차가 없는 2진수를 만드는 것이다.
- BigDecimal은 다음과 같은 변수를 가진다.
(1) private final BigInteger intVal
: 정수(unscaled value)
(2) private final int scale
: 지수(scale)
(3) private transient int precision
: 정밀도(precision)
( 12345 * 10^-2의 뜻으로 정밀도는 전체 자릿수를 의미한다. )
- BigDecimal의 생성 방법은 여러가지 있는데, 문자열로 숫자를 표현하는 것이 일반적이다.
아래의 코드를 보자.
<주의할 점>
: 매개변수로 생성하는 new BigDecimal("0.1")과 new BigDecimal(0.1)는 서로 다른 값을 가진다.
("0.1"은 0.1이지만, 0.1은 0.1000....55...의 오차값을 얻는다.)
'자바 > 유용한 클래스들' 카테고리의 다른 글
유용한 클래스(6) - BigInteger class (0) | 2021.12.31 |
---|---|
유용한 클래스(5) - StringTokenizer class (0) | 2021.12.31 |
유용한 클래스(4) - Scanner class (0) | 2021.12.30 |
유용한 클래스(3) - 정규식 - regex 패키지 (0) | 2021.12.29 |
유용한 클래스(2) - Random class (0) | 2021.12.29 |