如何用点格式化双倍?
如何将 Double with 格式化为字符串,并在整数和小数部分之间使用点?String.format
String s = String.format("%.2f", price);
上述格式仅带逗号:“,”。
如何将 Double with 格式化为字符串,并在整数和小数部分之间使用点?String.format
String s = String.format("%.2f", price);
上述格式仅带逗号:“,”。
String.format(String, Object ...)
正在使用 JVM 的缺省语言环境。您可以直接使用 java.util.Formatter
的任何语言环境。String.format(Locale, String, Object ...)
String s = String.format(Locale.US, "%.2f", price);
或
String s = new Formatter(Locale.US).format("%.2f", price);
或
// do this at application startup, e.g. in your main() method
Locale.setDefault(Locale.US);
// now you can use String.format(..) as you did before
String s = String.format("%.2f", price);
或
// set locale using system properties at JVM startup
java -Duser.language=en -Duser.region=US ...
基于这篇文章,你可以这样做,它在Android 7.0上适用于我
import java.text.DecimalFormat
import java.text.DecimalFormatSymbols
DecimalFormat df = new DecimalFormat("#,##0.00");
df.setDecimalFormatSymbols(new DecimalFormatSymbols(Locale.ITALY));
System.out.println(df.format(yourNumber)); //will output 123.456,78
这样,您就可以根据自己的Locale
答案编辑和修复感谢凯文范米尔洛评论