可能性のある複製:
小数点以下2桁から2桁の有効数字
先行ゼロを使用して、小数点以下2桁から2桁をフォーマットしようとしていますが、運がありません。ここに私のコードがあります:
Double price = 32.0;
DecimalFormat decim = new DecimalFormat("#.##");
Double price2 = Double.parseDouble(decim.format(price));
そして、出力を32.00
にする代わりに32.0
を取得します
解決策はありますか??
OPは先行ゼロが必要です。その場合、Tofubeerによると:
_ DecimalFormat decim = new DecimalFormat("0.00");
_
編集:
ここでは、数値の内部表現ではなく、数値のフォーマットについて説明していることに注意してください。
_ Double price = 32.0;
DecimalFormat decim = new DecimalFormat("0.00");
Double price2 = Double.parseDouble(decim.format(price));
System.out.println(price2);
_
デフォルト形式を使用して_price2
_を出力します。書式設定された表現を印刷する場合は、次の形式を使用して印刷します。
_ String s = decim.format(price);
System.out.println("s is '"+s+"'");
_
この観点から、あなたのparseDouble()
はあなたが望むことをしているとは思いませんし、できません。
これを試して:
DecimalFormat decim = new DecimalFormat("#.00");