java保留小數點後幾位,不足的用0補

在 java 中,若是小數點最後位是0,double類型會把這個0去掉,好比4.30變成了4.3,這樣致使有的界面顯示很差看。java

因此要轉換下,以下方法code

/**
     * 將double格式化爲指定小數位的String,不足小數位用0補全
     *
     * @param v     須要格式化的數字
     * @param scale 小數點後保留幾位
     * @return
     */
    public static String roundByScale(double v, int scale) {
        if (scale < 0) {
            throw new IllegalArgumentException(
                    "The   scale   must   be   a   positive   integer   or   zero");
        }
        if(scale == 0){
            return new DecimalFormat("0").format(v);
        }
        String formatStr = "0.";
        for(int i=0;i<scale;i++){
            formatStr = formatStr + "0";
        }
        return new DecimalFormat(formatStr).format(v);
    }
相關文章
相關標籤/搜索