我試圖使用DecimalFormat格式化價格,但這不適用於所有變體。使用DecimalFormat格式化數字
DecimalFormat df = new DecimalFormat("0.##")
df.format(7.8)
df.format(85.0)
打印
7.80
和
85
但 「7.79999」 被格式化爲 「7.8」,而不是 「7.80」。我曾嘗試這樣做,讓
DecimalFormat df = new DecimalFormat("0.00")
迫使兩個DP,但隨後「85.0」被格式化爲「85.00」而不是「85」!
是否有一種捕獲所有變化的方法,以便價格打印爲#,##或#。##?例如:
5,55,5.55,5.50,500,500.40
http://stackoverflow.com/questions/5033404/how-to-use-javas-decimalformat- for-smart-currency-formatting – Zutty