格式化带前导符号的数字
如何在 Java 中格式化带有前导符号的数字?
How do I format in Java a number with its leading sign?
前导-
可以正确显示负数,但是+
明显不显示正数.
Negative numbers are correctly displayed with leading -
, but obviously positive numbers are not displayed with +
.
如何在 Java 中做到这一点?我当前的货币格式字符串是 ###,###,###,###,##0.00
(是的,我需要格式化正/负货币值)
How to do that in Java? My current currency format string is ###,###,###,###,##0.00
(yes, I need to format positive/negative currency values)
推荐答案
使用否定子模式,如 DecimalFormat 的 javadoc.
Use a negative subpattern, as described in the javadoc for DecimalFormat.
DecimalFormat fmt = new DecimalFormat("+#,##0.00;-#");
System.out.println(fmt.format(98787654.897));
System.out.println(fmt.format(-98787654.897));
产生(在我的法语语言环境中,空格是分组分隔符,逗号是小数分隔符):
produces (in my French locale where space is the grouping separator and the comma is the decimal separator) :
+98 787 654,90
-98 787 654,90
相关文章