Я в основном пытаюсь использовать DecimalFormat, чтобы добраться до двух знаков после запятой. Я беру два целочисленных значения, затем делю их и привожу к двойному значению, приведенному ниже. Когда я делаю, как показано ниже, я получаю значение, которое больше не соответствует двум десятичным знакам. Кажется, что при умножении на 3 округление теряется.
DecimalFormat df = new DecimalFormat("#.00");
double d = Double.parseDouble(df.format((double)5/6))*3;
System.out.println(d);
Можете ли вы сообщить мне, почему это происходит и как это исправить?