Посмотрите на следующие операторы в Java.
System.out.println(new DecimalFormat("0").format(2.4)); //returns 2
System.out.println(new DecimalFormat("0").format(2.5)); //returns 2 <---Concentrate here
System.out.println(Math.round(2.5)); //returns 3
System.out.println(new DecimalFormat("0").format(2.6)); //returns 3
System.out.println(new DecimalFormat("0").format(3.5)); //returns 4
В приведенных выше утверждениях все остальные случаи очевидны, кроме следующих.
System.out.println(new DecimalFormat("0").format(2.5));
Он должен возвращать 3
, но возвращает 2
. Как?