如果数字类似于12.5美元,则添加0结束

时间:2012-06-27 01:33:31

标签: java android

  

可能重复:
  USD Currency Formatting in Java

全部 - 我有一个小问题,我的应用程序在输入经过一个等式后输出一个答案,并四舍五入到小数点后的两位小数。我的问题是,如果这个数字出现甚至是12.80美元,输出看起来像12.8美元。我希望它看起来像12.80美元。不是最大的交易,但我处于开发的最后阶段,并希望清理它看起来不错。以下是我的一些代码:

    Float result2 = result / l3;

    double data2 = result2; 

    int decimalPlaces2 = 2;
    double roundBase2 = Math.pow(10, decimalPlaces2);
    data2 = (double)(Math.round(data2 * roundBase2)) / roundBase2;

    answer.setText("$" + Double.toString(data2));

谢谢你的时间!

3 个答案:

答案 0 :(得分:8)

DecimalFormat format = new DecimalFormat("$#");
format.setMinimumFractionDigits(2);
answer.setText(format.format(data2));

答案 1 :(得分:1)

以下是我喜欢的方式:

float a = 12.5;

String money = String.format("$%.2f", a);

答案 2 :(得分:0)

这不适用于Android,但您可以使用DecimalFormat自定义显示的小数位数和类型。

Example