java中的設置精度(小數位數)向上取整 BigDecimal

使用BigDecimal對任意精度帶符號小數進行縮放操作

public static void test3() {
        double a = 1.2111d;
        //保留三位小數向上截取(非四捨五入)
        double d = new BigDecimal(a).setScale(3, BigDecimal.ROUND_UP).doubleValue();
        System.out.println(d);
    }

ROUND_CEILING
如果BigDecimal是正的,則做ROUND_UP操作; 如果爲負,則做ROUND_DOWN操作。 

ROUND_FLOOR 
如果BigDecimal爲正,則作ROUND_UP; 如果爲負,則作ROUND_DOWN。 
  
ROUND_HALF_DOWN   
若捨棄部分> 0.5,則作ROUND_UP; 否則,作ROUND_DOWN。  

ROUND_HALF_EVEN   
如果捨棄部分左邊的數字爲奇數,則作ROUND_HALF_UP;如果它爲偶數,則作ROUND_HALF_DOWN。   

ROUND_HALF_UP   
若捨棄部分>=0.5,則作ROUND_UP; 否則作ROUND_DOWN。   

ROUND_UNNECESSARY   
該“僞舍入模式”實際是指明所要求的操作必須是精確的,因此不需要舍入操作。   

ROUND_UP   
總是在非0捨棄小數(即截斷)之前增加數字。(其實就是隻要不是0,就進一位的意思)  

ROUND_DOWN   
從不在捨棄(即截斷)的小數之前增加數字(其實就是截斷的意思)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章