在 DecimalFormat 处将点更改为逗号
Posted
技术标签:
【中文标题】在 DecimalFormat 处将点更改为逗号【英文标题】:Change dot to comma at DecimalFormat 【发布时间】:2014-11-26 04:18:57 【问题描述】:当我使用这个格式化程序时:
java.text.DecimalFormat("#.000");
对于 1234567/1000000.0
输出是:
1.235
我想要这样:
1,235
并尝试过:
java.text.DecimalFormat("#,000");
但它不能作为例外工作。如何根据我的情况将点改为逗号?
【问题讨论】:
看这里***.com/questions/10584948/doubles-commas-and-dots 【参考方案1】:您需要使用DecimalFormatSymbols的实例设置格式符号:
public void testDec()
DecimalFormat df = new DecimalFormat("#.000");
DecimalFormatSymbols sym = DecimalFormatSymbols.getInstance();
sym.setDecimalSeparator(',');
df.setDecimalFormatSymbols(sym);
System.out.println(df.format(1234567/1000000.0));
输出是
1,235
【讨论】:
【参考方案2】:您可以将.
替换为,
DecimalFormat decimalFormat=new DecimalFormat("#.000");
double d=1234567/1000000.0;
System.out.println(decimalFormat.format(d).replace(".",","));
输出:
1,235
【讨论】:
【参考方案3】:您想用“,”显示十进制数字有什么特别的原因吗?
否则
Double answer = 1234567/1000000.0;
DecimalFormat formatter = new DecimalFormat("#,###");
System.out.println(formatter.format(answer*1000));
【讨论】:
【参考方案4】:希望下面的代码有所帮助
public void decimalExample()
DecimalFormat df = new DecimalFormat("#.000");
DecimalFormatSymbols sym = DecimalFormatSymbols.getInstance();
sym.setDecimalSeparator(',');
df.setDecimalFormatSymbols(sym);
System.out.println(df.format(138947293/1000000.0));
【讨论】:
以上是关于在 DecimalFormat 处将点更改为逗号的主要内容,如果未能解决你的问题,请参考以下文章
将点更改为 UIPageViewController 的图像