【问题标题】:Format numbers with commas用逗号格式化数字
【发布时间】:2014-04-07 18:25:12
【问题描述】:

我正在使用

DecimalFormat df = new DecimalFormat("###,###,###.##")

当尝试格式化数字时,只有大于七位数的数字才会被格式化为逗号。因此,1000000 转换为 1,000,000,但 1000 不会转换为 1,000。有什么我做错了,还是有任何其他方式来格式化我应该使用的数字?

【问题讨论】:

  • 当我尝试格式化 1000 时,你的格式对我来说很好,即我得到 1,000。你能告诉我你使用df的代码吗?
  • @azurefrog 我认为 IndexOutofBound 意味着他希望将1000 格式化为1000,而不是1,000
  • 啊,那是阅读理解问题。 ://
  • @azurefrog 不,这是问题的错:“1000 没有转换为 1,000”。我开始认为,当他尝试格式化1000 时,他得到1000,但想要1,000,这意味着他做错了其他事情。
  • 十进制格式按预期工作,我正在使用的代码的其他部分弄乱了格式。感谢大家为此提供帮助。

标签: java locale number-formatting decimalformat


【解决方案1】:

试试

df.setDecimalFormatSymbols(new DecimalFormatSymbols(Locale.US));

DecimalFormat 是特定于区域设置的,可以根据系统区域设置不同地解释格式符号。

【讨论】:

    猜你喜欢
    • 2014-05-31
    • 2020-12-18
    • 2017-12-09
    • 2011-11-08
    • 1970-01-01
    • 1970-01-01
    • 2010-10-16
    • 1970-01-01
    相关资源
    最近更新 更多