0
我有一個字符串格式的數字,我想將它轉換爲浮點數並保留兩位小數。用逗號將數字字符串轉換爲浮點數
字符串格式的數字可以類似於「1」或「1 128」(一千一百二十八)。
起初,我試圖
String stringNumber = "1"; //works fine EXPECTED OUTPUT -- 1.00
String stringNumber = "1,128"// fails because it has a comma. EXPECTED OUTPUT -- 1,128.00
Float f = Float.parseFloat(stringNumber);
String s = String.format("%.2f", f);
做Float.parseFloat我可以從字符串中刪除逗號前,並在最後使用的格式如下圖所示,以獲得逗號後面
format("% ,d", number)
我認爲我做了很多簡單的事情。
有沒有更簡單的方法來實現這一點。
在此先感謝。 Rao
編輯 到目前爲止我得到了什麼。 輸入 - 「1,128」 使用下面的代碼轉換爲「1,128.0」 我唯一缺少的是一個額外的小數點。 使用decimalFormat如何添加額外的小數點任何想法傢伙?
String qa = "1,128";
String nocomma = qa.replace(",", "");
Float f = Float.parseFloat(nocomma);
String s = String.format("%.2f", f);
DecimalFormat formatter = new DecimalFormat("#,###,###.0#");
String yourFormattedString = formatter.format(f);
return yourFormattedString;
謝謝您的答覆,我知道我能做到這一點,但如果我輸入的是1128,並且我也做了parsefloat將其轉換爲1128.00。但我期望的輸出是1,128.00。我可以使用decimalFormatter'DecimalFormat formatter = new DecimalFormat(「#,###,###。##」)',但.00仍然不顯示。我想我不是十進制格式化程序的權利。 – BRDroid
如果問題只與最後的零有關,如果將1,128轉換爲字符串並在其末尾添加00,它可能會有幫助嗎? – Simo
沒有可能因爲可以有一個小數點 – BRDroid