🌿 What?

  • Trong các ngôn ngữ lập trình, khi tính toán với float hoặc double thì sẽ gặp sai số. VD:
1.9 + 1.2
=> 3.0999999999999996
  • Với những ngành như tài chính, tiền bạc mà tính lệch một số sau dấu phẩy thôi là tới công chiện liền 🥵

🌿 Solution

  • Trong DB chúng ta hay dùng decimal với 2 thông số precision(số lượng chữ số tính cả sau dấu ,) và scale(số lượng chữ số sau dấu ,) để tính toán.
  • Còn khi chúng ta thao tác ở bên ngoài, ví dụ như trong code hoặc console thì có thể sử dụng BigDecimal.
BigDecimal("1.2") + BigDecimal("1.9")
=> 0.31e1
 
_.to_f
=> 3.1

🌿 Refer