下列代碼表示保留兩位小數並且四舍五入的雙精度類型數據處理。
1 Double num = 69.26345; 2 BigDecimal bd = new BigDecimal(num); 3 num = bd.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
數據處理還可以使用下列參數來替換
BigDecimal.ROUND_HALF_UP 表示四舍五入
BigDecimal.ROUND_HALF_DOWN 表示五舍六入
BigDecimal.ROUND_UP 表示去尾數在最后一位加1
BigDecimal.ROUND_DOWN表示去掉尾數
注:負數先取絕對值再處理再負數
下列代碼表示將Double類型數據保留兩位去尾數處理再轉String類型。
1 Double num = 69.26345; 2 DecimalFormat df = new DecimalFormat("0.00"); 3 String str = df.format(num);
下列代碼表示將Double類型數據保留兩位四舍五入處理轉String類型。
1 Double num = 69.26345; 2 String str =String.format("%.2f", num);
下列代碼表示將Double類型數據保留兩位四舍五入處理轉String類型。
1 Double num = 69.26345; 2 NumberFormat nf = NumberFormat.getNumberInstance(); 3 // 保留兩位小數 4 nf.setMaximumFractionDigits(2); 5 // 四舍五入 6 nf.setRoundingMode(RoundingMode.UP); 7 String str = nf.format(num));