Java:浮点格式取决于语言环境

标签 java formatting floating-point locale

我住在比利时。通常,在数学中,我们用逗号写小数:3,141592
这也是我格式化 float 时的结果。

System.out.println(String.format("%f", 3.141592));

因此,. 被替换为 ,,如下所示:3,141592。所以总是当我需要一个点时,我必须添加如下内容: String.format("%f", 3.14).replace(',','.');

所以,问题是:有没有办法改变语言环境,使 Java 中的每个格式化程序都使用一个点,而不是逗号?

谢谢


System.out.println(Locale.getDefault());

打印

nl_BE

最佳答案

尝试使用 String.format(Locale.US, "%f", floatValue) 来设置格式化期间使用的区域设置。

关于Java:浮点格式取决于语言环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4553633/

相关文章:

java - 不能从静态上下文中引用非静态变量

c++ - 使用 cin 以特定格式读取

C : apply formatting (right align, center等)到终端文本输出

c - 将 char[8] 转换为 double 时出现舍入问题

C# 小数类型相等

java - Java中如何查找类型变量的类?

java - 使用交替行颜色制作 scene2d.ui 表?

java - 在所有 Android 版本中以编程方式打开和关闭 GPS

string - excel宏来格式化数据

java - 为什么多次加0.1仍然无损?