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                    

java的四舍五入与保留位_第1张图片
举例

几种保留小数位的方法

1.使用BigDecimal 

使用BigDecimal

2.使用DecimalFormat

java的四舍五入与保留位_第2张图片
使用DecimalFormat

3.使用String .format

java的四舍五入与保留位_第3张图片
使用String .format

4.使用struts标签情况下使用format属性

java的四舍五入与保留位_第4张图片
struts标签 下format属性

你可能感兴趣的:(java的四舍五入与保留位)