BigDecimal.setScale:
BigDecimal枚举常量用法摘要 :
CEILING 向正无限大方向舍入的舍入模式。
DOWN 向零方向舍入的舍入模式。
FLOOR 向负无限大方向舍入的舍入模式。
HALF_DOWN 向最接近数字方向舍入的舍入模式,如果与两个相邻数字的距离相等,则向下舍入。
HALF_EVEN 向最接近数字方向舍入的舍入模式,如果与两个相邻数字的距离相等,则向相邻的偶数舍入。
HALF_UP 向最接近数字方向舍入的舍入模式,如果与两个相邻数字的距离相等,则向上舍入。
UNNECESSARY 用于断言请求的操作具有精确结果的舍入模式,因此不需要舍入。
UP 远离零方向舍入的舍入模式。
BigDecimal bigdecimal =new BigDecimal("123.15");
BigDecimal bigdecimal =new BigDecimal(123.15);
执行:
System.out.println(bigdecimal.setScale(1.BigDecimal.ROUND_HALF_DOWN).toPlainString());
结果:
123.1
123.2
很奇怪为什么字符串和doubl得到的结果不同,知道的朋友解释下呗。