当我使用这个格式化程序时:
java.text.DecimalFormat("#.000");
表示1234567 / 1000000.0
输出是:
1.235
我希望它像那样:
1,235
并尝试过:
java.text.DecimalFormat("#,000");
但它不能作为例外工作。如何根据我的情况将点更改为逗号?
答案 0 :(得分:8)
您需要使用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
答案 1 :(得分:0)
您可以将.
替换为,
DecimalFormat decimalFormat=new DecimalFormat("#.000");
double d=1234567/1000000.0;
System.out.println(decimalFormat.format(d).replace(".",","));
Out put:
1,235
答案 2 :(得分:0)
您是否有特殊原因需要使用","?
显示十进制数字?否则
Double answer = 1234567/1000000.0;
DecimalFormat formatter = new DecimalFormat("#,###");
System.out.println(formatter.format(answer*1000));
答案 3 :(得分:0)
希望下面的代码有帮助
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));
}