У меня есть вопрос, я делаю приложение, которое является своего рода законопроект, однако я не знаю, как выразить в TextView, например:Экспресс номер в специальном формате в Android
1120 в $ 1,120 или что-то вроде этого.
Заранее спасибо
У меня есть вопрос, я делаю приложение, которое является своего рода законопроект, однако я не знаю, как выразить в TextView, например:Экспресс номер в специальном формате в Android
1120 в $ 1,120 или что-то вроде этого.
Заранее спасибо
numberformat ваше решение: Код испытания:
int = 1236;
NumberFormat nf = NumberFormat.getInstance(Locale.US);
Log.i("test", nf.format(nb));
показать выход:
1,236
Есть целый ряд решений для форматирования чисел в 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))));
Удачи вам!