Я пытаюсь отформатировать двойные значения, чтобы они имели только 2 десятичных пробела:
remainingAmount = Double.parseDouble(String.format("%.2f",remainingAmount - calculatePrincipalPayment()));
Как видите, этот код форматирует двойное значение remainingAmount - calculatePrincipalPayment()
, используя String.format()
, затем передаетон переходит из String в Double и присваивает его двойной переменной оставшейся сумме (которая была объявлена).remainingAmount
равно double, а calculatePrincipalPayment()
возвращает значение double.
Проблема заключается в том, что он форматирует только часть значений, например, он может возвращать 401.37 (что является обязательным форматированием), а также 403.71999999999997.Я также уже пытался сделать форматирование с помощью DecimalFormat df = new DecimalFormat ("#. ##").