我需要显示浮点值的小数位,只有当它与零不同时才会显示。
如何使用正则表达式或DecimalFormat以这种方式格式化?
答案 0 :(得分:7)
要以您希望的方式显示小数,请使用以下代码段:
// This is to show symbol . instead of ,
DecimalFormatSymbols otherSymbols = new DecimalFormatSymbols(Locale.US);
// Define the maximum number of decimals (number of symbols #)
DecimalFormat df = new DecimalFormat("#.##########", otherSymbols);
// type: double
System.out.println(df.format(5.0)); // writes 5
System.out.println(df.format(7.3)); // writes 7.3
System.out.println(df.format(9.000003)); // writes 9.000003
// type: float
System.out.println(df.format(9.000003f)); // writes 9.000002861