Eri*_*pir 12 java double formatting
使用时toString(),Double添加逗号(5143打印为5,143).如何禁用逗号?
Ade*_*ari 14
您的问题属于Locale,正如Rorick正确指出的那样.但是,您应该查看DecimalFormat类,以防更改Locale意味着搞乱所有事情.
查看NumberFormat类,处理千位分隔符.因为看起来你的情况是关于千分隔.
小智 8
这将删除所有分组(在您的情况下为逗号).
DecimalFormat df = new DecimalFormat();
df.setGroupingUsed(false);
Run Code Online (Sandbox Code Playgroud)
据我所知,你无法禁用该toString()方法返回的内容.
我的解决方案如下:
someDouble.toString().replaceAll(",", "");
Run Code Online (Sandbox Code Playgroud)
不是最优雅的解决方案,但它的工作原理.
Java 非常支持使用NumberFormat类在不同语言环境中格式化文本中的数字:
使用当前语言环境:
NumberFormat.getNumberInstance().format(5000000);
Run Code Online (Sandbox Code Playgroud)
将为您提供(使用瑞典语语言环境)字符串:5 000 000
...或使用特定的语言环境(例如法语,也会导致5 000 000):
NumberFormat.getNumberInstance(Locale.FRANCE).format(5000000);
Run Code Online (Sandbox Code Playgroud)