Double형 소수를 new BigDecimal(0.29293) 로 생성하면 0.2929332900004000010202020 와 같은 값으로 생성됨.
BigDecimal.valueOf(0.29293)으로 생성해야 0.29293으로 정상적으로 생성됨.
new BigDecimal() 의 경우. 매번 새로운 생성자를 생성함.
new BigDecimal로 생성하려는경우 인자를 String으로 할당해야 정확한 값을 얻을 수 있다.
ex) new BigDecimal("1.12") => 1.12
BigDecimal.valueOf는 미리 캐싱해둔 생성값으로 생성해 낸다.
double 형을 인자로 전달할 때는 BigDecimal.valueOf를 사용해야 정확한 값을 얻을 수 있다.
'☕️Java > Java Basic' 카테고리의 다른 글
List를 1000건씩 삽입하는 방법. (0) | 2021.08.23 |
---|---|
Java partition list by size. (0) | 2021.08.18 |
BigDecimal의 toString 들. (0) | 2021.01.13 |
BigDecimal - stripTrailingZeros() (0) | 2021.01.13 |
Boolean의 기본 타입. (0) | 2021.01.12 |