Use String or BigDecimal.valueOf(double) for precise construction.
Constructing BigDecimal using a double can lead to precision errors due to binary floating-point representation. Using a String ensures the exact value is used. For example, `new BigDecimal("19.99")` creates a BigDecimal with the exact monetary value you intend. Alternatively, `BigDecimal.valueOf(19.99)` can be used for conversion from double safely.