0

我有一个问题,我正在做一个应用程序,它是一种账单,但我不知道如何在 textview 中表达,例如:

1120 为 1.120 美元或类似的东西。

提前致谢

4

2 回答 2

0

在 Android 中有许多格式化数字的解决方案,当然这取决于您的应用程序的性质和您的要求。

因为您在示例中使用了货币价值,所以我会研究Big Decimal具有多种精度和舍入方法。

这是给你的一个小例子,注意它不是本地化的!

BigDecimal theAmount = new BigDecimal(int);

DecimalFormat decimalFormat = new DecimalFormat("$#,##0.00;-$#,##0.00");
// ^ This is set manually, you could use a localised format to have Android set the 
// values based on locale like this: DecimalFormat.getInstance();

decimalFormat.setDecimalSeparatorAlwaysShown(true);
decimalFormat.setMinimumFractionDigits(3);
decimalFormat.setMaximumFractionDigits(3);
// ^ There are a lot of methods to check out here!

TextView yourTextView.setText(decimalFormat.format(theAmount.divide(new BigDecimal(1000))));

祝你好运!

于 2013-08-12T04:57:31.320 回答
0

numberformat是您的解决方案:测试代码:

int = 1236;
NumberFormat nf = NumberFormat.getInstance(Locale.US);
Log.i("test", nf.format(nb));

显示输出:

1,236
于 2013-08-12T03:27:03.503 回答