java的四舍五入與保留位

簡介

主要涉及類BigDecimal,舍入模式RoundingMode,及其他類

java支持7中舍入法

?1、 ROUND_UP:遠離零方向舍入。向絕對值最大的方向舍入,只要舍棄位非0即進位。

?2、 ROUND_DOWN:趨向零方向舍入。向絕對值最小的方向舍入,所有的位都要舍棄,不存在進位情況。

?3、 ROUND_CEILING:向正無窮方向舍入,向正最大方向靠攏。如果參數是正數,使用UP規則,如果參數是負數,使用DOWN規則;

?4、 ROUND_FLOOR:向負無窮方向舍入,向負無窮方向靠攏。如果參數是正數,使用DOWN規則,如果參數是負數,使用UP規則;

?5、 HALF_UP:最近數字舍入(5進),這是我們最經典的四舍五入。如果要丟掉的數字大于等于0.5,使用UP規則;否則使用DOWN規則;

?6、 HALF_DOWN:最近數字舍入(5舍)。在這里5是要舍棄的。如果要丟掉的數字大于0.5,使用UP規則;否則使用DOWN規則;

?7、 HAIL_EVEN:銀行家舍入法。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?1)舍去位的數值小于5時,直接舍去; ? ?//11.554 = 11.55?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?2)舍去位的數值大于5時,進位后舍去;//?11.556 = 11.56

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?3)當舍去位的數值等于5時,

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?若5后面還有其他非0數值,則進位后舍去; ? ??//11.5551 = 11.56 -----五后有非0數進位舍去

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?若5后面是0時,則根據5前一位數的奇偶性來判斷,奇數進位,偶數舍去; //11.545 = 11.54?,11.555 = 11.56? ? ? ? ? ? ? ? ? ??

舉例

幾種保留小數位的方法

1.使用BigDecimal?

使用BigDecimal

2.使用DecimalFormat

使用DecimalFormat

3.使用String?.format

使用String?.format

4.使用struts標簽情況下使用format屬性

struts標簽 下format屬性
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容