一、Bigdecimal
1.两个bigdecimal类型相加
BigDecimal bigDecimal1 = new BigDecimal(10);
BigDecimal bigDecimal2 = new BigDecimal(10);
System.out.println(bigDecimal1.add(bigDecimal2));
2.两个数相乘保留两位小数并四舍五入
BigDecimal bigDecimal1 = new BigDecimal(10);
BigDecimal bigDecimal2 = new BigDecimal(10);
System.out.println(bigDecimal1.multiply(bigDecimal2).setScale(2,BigDecimal.ROUND_HALF_UP));
3.两个bigdecimal类型相减
BigDecimal bigDecimal1 = new BigDecimal(10);
BigDecimal bigDecimal2 = new BigDecimal(10);
System.out.println(bigDecimal1.subtract(bigDecimal2));
4. 两个bigdecimal类型相除
BigDecimal bigDecimal1 = new BigDecimal(10);
BigDecimal bigDecimal2 = new BigDecimal(10);
System.out.println(bigDecimal1.divide(bigDecimal2));
5.setscale中ROUND_HALF_DOWN和ROUNT_HALF_UP的区别
ROUND_HALF_DOWN:保留精度的后一个如果小于等于5,则丢弃,否则进一位
eg: 3.555保留两位小数是3.55
ROUNF_HALF_UP:保留精度后一个如果大于5,则前进一位,否则舍弃(四舍五入)
eg:3.555保留两位小数是3.56