java中BigDecimal精確位數的計算

1、ROUND_UP    public final static int ROUND_UP = 0

解釋:舍入遠離零的模式。進1法,即不管後面的數字是多大,都進1。

 

2、ROUND_DOWN    public final static int ROUND_DOWN = 1;

解釋:接近零的舍入模式。去1法,即不管後面的數字多大,都直接捨去。

 

3、ROUND_CEILING  public final static int ROUND_CEILING = 2;

解釋:接近正無窮大的舍入模式。正的時候,效果跟up一樣;負的時候,效果跟down一樣。up正,down負。

 

4、ROUND_FLOOR  public final static int ROUND_FLOOR = 3;

解釋:接近負無窮的舍入模式。正的時候,效果跟down一樣;負的時候,效果跟up一樣。down正,up負。

 

5、ROUND_HALF_UP  public final static int ROUND_HALF_UP = 4;

解釋:向"最接近的"數字舍入,如果與倆個相鄰數字的距離相等,則爲向上舍入的舍入模式。如果捨棄部分>=0.5,則舍入行爲與up相同;否則,攝入行爲與down相同。即逢5進1,就是四捨五入。

 

6、ROUND_HALF_DOWN  public final static int ROUND_HALF_DOWN = 5;

解釋:向"最接近的"數字舍入,如果與倆個相鄰的數字的距離相等,則爲上舍入的舍入模式。如果捨棄部分>0.5,則舍入模式與up相同;否則舍入行爲與down相同。即5舍6入。

 

7、ROUND_HALF_EVEN  public final static int ROUND_HALF_EVEN = 6;

解釋:向"最接近的"數字舍入,如果與倆個相鄰數字的距離相等,則向相鄰的偶數舍入。如果捨棄部分左邊的數字爲奇數,則舍入行爲與ROUND_HALF_UP相同;如果爲偶數,則舍入行爲與ROUND_HALF_DOWN相同。即4舍6入,5分倆種情況。如果前一位爲奇數,則入位,否則捨去。

 

8、ROUND_UNNECESSARY  public final static int ROUND_UNNECESSARY = 7;

解釋:斷言請求的操作具有精確的結果,因此不需要捨去。如果對獲取精確結果的操作指定此舍入模式,則拋出ArithmeticException。

 

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