0
A
回答
0
您可能還需要限制小數部分的長度,因爲在執行一系列浮點運算後可能會出現類似12.00001的結果。代碼片段我用漂亮格式的雙轉換爲字符串:
private static final DecimalFormat[] formats= new DecimalFormat[]{
null,
new DecimalFormat("#.#"),
new DecimalFormat("#.##"),
new DecimalFormat("#.###"),
new DecimalFormat("#.####")
};
public static String toConciseString(double d, int fractionLength){
long asLong = (long) d;
if(Math.abs(d - asLong) < 0.00001d){
return Long.toString(asLong);
}
return formats[fractionLength].format(d);
}
測試用例顯示輸出的例子:
assertThat(toConciseString(23.323, 2)).isEqualTo("23.32");
assertThat(toConciseString(23.329, 2)).isEqualTo("23.33");
assertThat(toConciseString(23.329, 3)).isEqualTo("23.329");
assertThat(toConciseString(23.3, 2)).isEqualTo("23.3");
assertThat(toConciseString(23.30001, 2)).isEqualTo("23.3");
assertThat(toConciseString(23.00001, 2)).isEqualTo("23");
0
試試這個:
DecimalFormat decimalFormat = new DecimalFormat("#0.##");
float float1 = 1.00f;
float float2 = 1.02f;
System.out.println(decimalFormat.format(float1));
System.out.println(decimalFormat.format(float2));
它會打印出:
1
1.02
相關問題
- 1. 如何在LLDB中顯示帶小數點的浮點值
- 2. Django的:顯示浮點數
- 3. 如果浮點顯示小數點2位,並且顯示小數點0位,如果int
- 4. 小數點不顯示
- 5. C++浮點顯示
- 6. 顯示整數和整數浮點數作爲浮點數
- 7. 做一個浮點只顯示x點前小數點
- 8. 在python中顯示浮點值
- 9. 如何顯示浮點值的編碼
- 10. $在控制檯中顯示浮點數
- 11. 在UILabel中顯示浮點數
- 12. 正確顯示小數點
- 13. 只顯示小數點
- 14. 如何顯示小數點?
- 15. 故障顯示小數點
- 16. C++雙串顯示浮點
- 17. 在Swift中將浮點數顯示爲可變小數位數
- 18. 顯示在GSP浮點數的Grails
- 19. 顯示雙打時,我如何對齊小數點和浮動
- 20. 根據數值的不同,自動顯示小數點後的小數點
- 21. 浮點比較和顯示消息
- 22. 從數據庫中顯示浮點數值的問題:
- 23. 來自數據庫的浮點值不能正確顯示php
- 24. jquery顯示val中的小數點
- 25. 浮動:左不顯示某一個點
- 26. Sql 2000浮點數在執行除法時不顯示小數點
- 27. 你如何顯示浮點數?
- 28. SQL - 浮點數顯示爲XE-05
- 29. 顯示浮點SQL數據類型
- 30. 顯示小數點後最多顯示3位數的數字
http://stackoverflow.com/questions/703396/how-t鄰很好格式浮動號碼到字符串,而無需-不必要十進制-0/14126736#14126736 –