格式化數字保留兩位小數

(1)使用BigDecimal ,保留小數點後兩位

public static String format1(double value) {  

    BigDecimal bd = new BigDecimal(value);  
    bd = bd.setScale(2, RoundingMode.HALF_UP);  
    return bd.toString();  
}  

(2)使用DecimalFormat ,保留小數點後兩位

public static String format2(double value) {  

    DecimalFormat df = new DecimalFormat("0.00");  
    df.setRoundingMode(RoundingMode.HALF_UP);  
    return df.format(value);  
}  

(3)使用NumberFormat ,保留小數點後兩位

public static String format3(double value) {  

    NumberFormat nf = NumberFormat.getNumberInstance();  
    nf.setMaximumFractionDigits(2);  
    /* 
     * setMinimumFractionDigits設置成2 
     *  
     * 如果不這麼做,那麼當value的值是100.00的時候返回100 
     *  
     * 而不是100.00 
     */  
    nf.setMinimumFractionDigits(2);  
    nf.setRoundingMode(RoundingMode.HALF_UP);  
    /* 
     * 如果想輸出的格式用逗號隔開,可以設置成true 
     */  
    nf.setGroupingUsed(false);  
    return nf.format(value);  
}  

(4)使用java.util.Formatter,保留小數點後兩位

public static String format4(double value) {  
    /* 
     * %.2f % 表示 小數點前任意位數 2 表示兩位小數 格式後的結果爲 f 表示浮點型 
     */  
    return new Formatter().format("%.2f", value).toString();  
}  

(5) 使用String.format 來實現

public static String format5(double value) {  

    return String.format("%.2f", value).toString();  
} 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章