В Java 17 у меня есть этот код, который получает строку, анализирует его в двойную и обводит его до 2 десятичных чисел < /p>
Double number = Double.parseDouble(inputStringNumber);
DecimalFormatSymbols decimalSymbols = new DecimalFormatSymbols();
decimalSymbols.setDecimalSeparator('.');
DecimalFormat df = new DecimalFormat("0.00", decimalSymbols);
df.setRoundingMode(RoundingMode.HALF_UP);
df.setMinimumFractionDigits(2);
df.setMaximumFractionDigits(2);
DTO.setNumber(df.format(number));
< /code>
Но округление не работает, как предполагалось. Если я введу «1,555», я получаю 1,55, хотя я ожидал 1,56 с закруглением. Что я делаю не так?
Подробнее здесь: https://stackoverflow.com/questions/796 ... s-expected