How money management needs care really is not interesting to use floating points, because arithmetic operations with them result in certain #.

The recommended data type for this is BigDecimal , where you can choose the level of precision you want. Unlike `double`

and `float`

, which use the binary base and have problems storing fractional numbers, `BigDecimal`

is more appropriate due to the fact that manipulations occur through the use of the decimal base.

Note: Due to the imprecision problems already mentioned, it is always recommended to make use of the constructor using String as a parameter, as in the example:

```
BigDecimal bd = new BigDecimal("0.1");
```