java 控制輸出小數位數
阿新 • • 發佈:2019-02-19
DecimalFormat 類主要靠 # 和 0 兩種佔位符號來指定數字長度。0
表示如果位數不足則以 0 填充,# 表示只要有可能就把數字拉上這個位置。
* */
DecimalFormat b = new DecimalFormat("#0.00000");
System.out.println(b.format(a));
//3 BigDecimal型資料的小數點控制輸出
// BigDecimal中的setScale方法的第一個引數就
//是我們要指定的精度位數,這裡我設為5位小數,但記住,如果
//舍入後的結果後面幾位小數是0,則會被省略,就是說0沒被輸出
/*
* BigDecimal.setScale()方法用於格式化小數點
setScale(1)表示保留一位小數,預設用四捨五入方式
setScale(1,BigDecimal.ROUND_DOWN)直接刪除多餘的小數位,如2.35會變成2.3
setScale(1,BigDecimal.ROUND_UP)進位處理,2.35變成2.4
setScale(1,BigDecimal.ROUND_HALF_UP)四捨五入,2.35變成2.4
setScaler(1,BigDecimal.ROUND_HALF_DOWN)四捨五入,2.35變成2.3,如果是5則向下舍
* */
BigDecimal bg = new BigDecimal(a);
double c = bg.setScale(5,BigDecimal.ROUND_HALF_UP).doubleValue();
//將BigDecimal物件轉換成相應的基本資料型別的變數,可以使用floatValue(),doubleValue()等方法。
System.out.println(c);
//4
/*
* setMinimumIntegerDigits(3);//設定整數部分至少為3位
setMaximumFractionDigits(5);//設定小數點後面尾數為5
setMinimumFractionDigits(int)
setMaximumIntegerDigits(int)
建立格式化器(預設地區Local格式):
NumberFormat.getNumberInstance();
NumberFormat.getCurrencyInstance();
NumberFormat.getPercentInstance();
* */
NumberFormat d = NumberFormat.getNumberInstance();
d.setMaximumFractionDigits(5);
System.out.println(d.format(a));
}