ROUND_HALF_UP: 遇到.5的状况时往上近似,例: 1.5 ->;2
ROUND_HALF_DOWN : 遇到.5的状况时往下近似,例: 1.5 ->;1
BigDecimal a = new BigDecimal(1.5);
System.out.println("down="+a.setScale(0,BigDecimal.ROUND_HALF_DOWN)+"/tup="+a.setScale(0,BigDecimal.ROUND_HALF_UP));
结果:down=1 up=2
看这个例子就明白了!.net
其余参数说明blog
ROUND_CEILING
若是 BigDecimal 是正的,则作 ROUND_UP 操做;若是为负,则作 ROUND_DOWN 操做。
ROUND_DOWN
从不在舍弃(即截断)的小数以前增长数字。
ROUND_FLOOR
若是 BigDecimal 为正,则做 ROUND_UP ;若是为负,则做 ROUND_DOWN 。
ROUND_HALF_DOWN
若舍弃部分> .5,则做 ROUND_UP;不然,做 ROUND_DOWN 。
ROUND_HALF_EVEN
若是舍弃部分左边的数字为奇数,则做 ROUND_HALF_UP ;若是它为偶数,则做 ROUND_HALF_DOWN 。
ROUND_HALF_UP
若舍弃部分>=.5,则做 ROUND_UP ;不然,做 ROUND_DOWN 。
ROUND_UNNECESSARY
该“伪舍入模式”实际是指明所要求的操做必须是精确的,,所以不须要舍入操做。
ROUND_UP
老是在非 0 舍弃小数(即截断)以前增长数字。 ci
原文:http://blog.csdn.net/daryl715/article/details/1604174im