倍精度浮動小数点値を小数点2桁にフォーマットする最良の方法 [重複] 質問する

倍精度浮動小数点値を小数点2桁にフォーマットする最良の方法 [重複] 質問する

アプリケーションで多くの double 値を扱っていますが、Java で小数値のフォーマットを処理する簡単な方法はありますか?

他にもっと良い方法はあるだろうか?

 DecimalFormat df = new DecimalFormat("#.##");

私が基本的にやりたいことは、double値を次のようにフォーマットすることです

23.59004  to 23.59

35.7  to 35.70

3.0 to 3.00

9 to 9.00

ベストアンサー1

いいえ、これより良い方法はありません。

実は、パターンに誤りがあります。必要なのは次のようになります:

DecimalFormat df = new DecimalFormat("#.00"); 

は小数点第 2 位を正確に"00"意味することに注意してください。

"#.##"(は「オプション」の数字を意味します)を使用すると#、末尾のゼロが削除されます。つまり、 ではなくnew DecimalFormat("#.##").format(3.0d);のみが印刷されます。"3""3.00"

おすすめ記事