[英]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.