[英]JAVA double to string format
突然我收到一个错误,之前我没有
例:
Double double1 = 0.12;
String string1 = String.format("%.2f", double1)
System.out.println(string1);
输出:
0,12
那我做
double double2 = Double.parseDouble(string1);
错误
java.lang.NumberFormatException: For input string: "0,12"
我很确定我是因为“,”(逗号)而来的。 有趣的是,两天前一切正常,我没有做任何更改。
是否知道发生了什么或我需要更改什么?
Double#parseDouble
以Double#toString
输出的格式解析数字。
当要求使用String#format
格式化带小数点的数字时,它将在当前语言环境中输出,但Double#toString
不会。
如果您想解析String#format
的输出,我相信Scanner
可以做到这一点。 但是,就我个人而言,我会避免对您希望解析的数字进行本地化,而是使用Double#toString
进行格式化,或者在格式化时显式传递Locale.ROOT
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.