usr*_*ΛΩΝ 42 java formatting numbers currency
如何在Java中使用其前导符号格式化数字?
负数正确显示带有前导-,但显然不会显示正数+.
如何用Java做到这一点?我当前的货币格式字符串是\#\#\#,\#\#\#,\#\#\#,\#\#\#,\#\#0.00(是的,我需要格式化正/负货币值)
JB *_*zet 61
使用负子模式,如DecimalFormat的javadoc中所述.
DecimalFormat fmt = new DecimalFormat("+#,##0.00;-#");
System.out.println(fmt.format(98787654.897));
System.out.println(fmt.format(-98787654.897));
Run Code Online (Sandbox Code Playgroud)
生成(在我的法语区域设置中,空格是分组分隔符,逗号是小数分隔符):
+98 787 654,90
-98 787 654,90
Run Code Online (Sandbox Code Playgroud)
Tom*_*icz 14
Formatter的 API 提供了一个示例:
Formatter formatter = new Formatter();
System.out.println(formatter.format(Locale.FRANCE, "e = %+10.4f", Math.E));
//e = +2,7183
Run Code Online (Sandbox Code Playgroud)
小智 7
我做了:
private NumberFormat plusMinusNF = new DecimalFormat("+#;-#");
Integer newBalance = (Integer) binds.get("newBalance");
bindsForUpdate.put("plusMinus", plusMinusNF.format(newBalance));
Run Code Online (Sandbox Code Playgroud)
格式为正整数,例如5到"+5"和负整数,例如-7到"-7"(如预期的那样)
| 归档时间: |
|
| 查看次数: |
48955 次 |
| 最近记录: |