1

重複の可能性:
Java で数値をフォーマットするにはどうすればよいですか?
Java で double をフォーマットする String.format()

double 変数 (double と呼ばれる) から出力を取得し、以下のようにいくつかの文字列テキスト (outputPref と呼ばれ、"cubic mm" のみを含む) と共に TextView に配置できるようにしたい

displayAnswer.setText(volume + " " + outputPref);

これは正常に機能しますが、数値は TextView に完全な double として表示されます (小数点以下の桁数が非常に多くなります)。Excelの数値形式 " (* #,##0.0 ); (* (#,##0.0); (* " -"?? ); (@_)"、または簡単に言えば (負の数がない場合) "#,##0.0"

ボリューム double 変数を TextView に適用する前に再構成するために使用する関数は何ですか?

4

5 に答える 5

4
String.format("%1$,.2f", myDouble);
于 2012-10-08T13:47:47.257 に答える
2

これを使って

NumberFormat format = NumberFormat.getInstance();
        format.setMaximumFractionDigits(1);
displayAnswer.setText(format.format(volume)+ " "+outputPref);
于 2012-10-08T13:46:56.010 に答える
1

TextView に表示するために double の数値を丸めることができます。

double roundTwoDecimals(double d) {
            DecimalFormat twoDForm = new DecimalFormat("#.##");
        return Double.valueOf(twoDForm.format(d));
}
于 2012-10-08T13:45:53.590 に答える
0

お役に立てば幸いです

rountdoubel=Maths.round(outputPref)

displayAnswer.setText(volume + " " + rountdoubel);
于 2012-10-08T13:49:11.907 に答える
0

次の方法で小数点以下の桁数を設定できます。

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

これにより、小数点以下に # 記号が 1 つあるため、整数の後に小数点以下 1 桁が表示されます。

次に、次のようにします。

df.format(yourDoubleHere);
于 2012-10-08T13:48:49.220 に答える