Я использовал BigDecimals раньше, но не очень часто, и я работал над чем-то этим утром, и я продолжал получать следующее исключение:
Exception in thread "main" java.lang.ArithmeticException: Non-terminating decimal expansion;
no exact representable decimal result.
at java.math.BigDecimal.divide(BigDecimal.java:1594)
Я пытался установить масштаб и использовать округление, чтобы устранить проблему следующим образом:
BigDecimal bd1 = new BigDecimal(1131).setScale(2,BigDecimal.ROUND_HALF_UP);
BigDecimal bd2 = new BigDecimal(365).setScale(2,BigDecimal.ROUND_HALF_UP);
BigDecimal bd3 = bd1.divide(bd2).setScale(2,BigDecimal.ROUND_HALF_UP);
System.out.println("result: " + bd3);
Однако я все равно получаю то же исключение. Кто-нибудь может показать мне, где я совершил ошибку?