Java中逗号作为十进制分隔符的字符串格式
我想将模式#####,00应用于我的大十进制数,因此,“,”是十进制分隔符,不会使用分组分隔符
我希望使用descripe模式获取数字的字符串表示形式,因此我执行以下操作:
DecimalFormatSymbols symbols = new DecimalFormatSymbols();
symbols.setDecimalSeparator(',');
df.setGroupingUsed(false);
DecimalFormat df = new DecimalFormat("###,00", symbols);
但当我执行下一个操作时:
System.out.println(df.format(new BigDecimal(589555.23)));
输出是589555,我希望是589555,23怎么了?我怎样才能使它工作
# 1 楼答案
不要用“,”而要用“.”
我得到的输出是589555,23
# 2 楼答案
只需将decimalFormat模式更改为
###.00
,因为在格式模式中,没有与十进制值相关的信息(小数点后),因此十进制值不会显示在格式化输出中产出:
# 3 楼答案
可以尝试使用逗号用作小数分隔符的区域设置。例如: