BigDecimal scale为正数表示保留小数位数,为负数表示保留到整数位
BigDecimal a = new BigDecimal(12345678)
.divide(new BigDecimal(10000), -1, RoundingMode.HALF_UP);
System.out.println(a.toPlainString());
BigDecimal b = new BigDecimal(12345678)
.divide(new BigDecimal(10000), 0, RoundingMode.HALF_UP);
System.out.println(b.toPlainString());
BigDecimal c = new BigDecimal(12345678)
.divide(new BigDecimal(10000), 1, RoundingMode.HALF_UP);
System.out.println(c.toPlainString());
1230
1235
1234.6
long a = new BigDecimal(12345678)
.divide(new BigDecimal(10000), -1, RoundingMode.HALF_UP)
.longValue();
System.out.println(a);
long b = new BigDecimal(12345678)
.divide(new BigDecimal(10000), 0, RoundingMode.HALF_UP)
.longValue();
System.out.println(b);
long c = new BigDecimal(12345678)
.divide(new BigDecimal(10000), 1, RoundingMode.HALF_UP)
.longValue();
System.out.println(c);
1230
1235
1234




