30
Javaで数値を小数点以下n桁に丸める方法
私が望むのは、doubleを、ハーフアップメソッドを使用して丸める文字列に変換するメソッドです。つまり、丸められる小数が5の場合、常に次の数値に切り上げられます。これは、ほとんどの人がほとんどの状況で期待する丸めの標準的な方法です。 また、有効数字のみが表示されるようにしたいと考えています。つまり、後続のゼロがあってはなりません。 これを行う1つの方法は、そのString.format方法を使用することです。 String.format("%.5g%n", 0.912385); 戻り値: 0.91239 これはすばらしいことですが、たとえ重要でなくても、常に小数点以下5桁の数値が表示されます。 String.format("%.5g%n", 0.912300); 戻り値: 0.91230 もう一つの方法は、使用することですDecimalFormatter: DecimalFormat df = new DecimalFormat("#.#####"); df.format(0.912385); 戻り値: 0.91238 ただし、ご覧のとおり、これは半偶数丸めを使用しています。つまり、前の桁が偶数の場合は切り捨てられます。私が欲しいのはこれです: 0.912385 -> 0.91239 0.912300 -> 0.9123 これをJavaで実現する最良の方法は何ですか?