java - 格式化带前导符号的数字

如何在 Java 中格式化带有前导符号的数字?

前导-可以正确显示负数,但是+明显不显示正数。

如何在 Java 中做到这一点?我当前的货币格式字符串是 \#\#\#,\#\#\#,\#\#\#,\#\#\#,\#\#0.00 (是的,我需要格式化正/负货币值)

最佳答案

使用负子模式,如 javadoc for DecimalFormat 中所述.

DecimalFormat fmt = new DecimalFormat("+#,##0.00;-#");
System.out.println(fmt.format(98787654.897));
System.out.println(fmt.format(-98787654.897));

产生(在我的法语语言环境中,空格是分组分隔符,逗号是小数分隔符):

+98 787 654,90
-98 787 654,90

https://stackoverflow.com/questions/5243316/

相关文章:

c - 'printf' 在 C 中带有前导零

sql-server - 如何在sql中获得小数点后2位?

c# - 将小数格式化为两位或整数

bash - 如何在 bash 中打印一些文本并用空格填充到一定宽度?

java - Eclipse 在哪里存储首选项?

php - 在 PHP 中打印货币数字格式

javascript - 用于在 JavaScript 中格式化数字的正则表达式

c# - 在 C# 中,将字符串格式化为 XML 的最佳方法是什么?

.net - 格式化 LINQ 查询的最佳方法

javascript - 如何在javascript中将完整日期转换为短日期?