以下是数字格式化程序的代码:
double value = 12345.678;
// locale preference should be retrieved from user preferences
Locale defaultLocale = new Locale("en", "US", "USD");
NumberFormat nf = NumberFormat.getCurrencyInstance(defaultLocale);
String formattedValue = nf.format(value);
System.out.println(formattedValue);
产值:12,345.68美元 但在这里,我希望我的输出值为:12,345.68美元。 我需要在价值结束处获得美元(货币代码)。
此外,我正在调用Webservice以获取值,如何将值传递给Required字段,并将其格式化?
答案 0 :(得分:10)
这段代码做了招数:
double value = 12345.678;
java.util.Currency usd = java.util.Currency.getInstance("USD");
java.text.NumberFormat format = java.text.NumberFormat.getCurrencyInstance(java.util.Locale.US);
format.setCurrency(usd);
System.out.println(format.format(value) + " " + usd.getCurrencyCode());
输出:
$12,345.68 USD
答案 1 :(得分:5)
为什么你不能自己追加这个价值?
System.out.println(formattedValue + " USD");