利用正则舍掉数字多余的0

利用String.format或者DecimalFormat、BigDecimal对小数格式化后,会遇到一个问题,如果结果恰好是整数,后面还会跟着多余的0,怎样将这些无用的0去掉?Java貌似没有提供这样的api,只能自己实现了。

public String subZeroAndDot(String str) {
        if (str.indexOf(".") > 0) {
            str = str.replaceAll("0+$", "");//去掉多余的0  
            str = str.replaceAll("[.]$", "");//如最后一位是.则去掉  
        }
        return str;
    }

你可能感兴趣的:(利用正则舍掉数字多余的0)