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
。どのように?