BigDecimal类型做除法,计算百分率,保留两位小数(不过时的方法)

上代码

BigDecimal oneone= BigDecimal.valueOf(10);
BigDecimal one = BigDecimal.valueOf(3);
BigDecimal result= oneone.divide(one,2, RoundingMode.HALF_UP);
System.out.println(result);

解析:
计算10/3,肯定除不尽,divide()方法如果不增加多余入参,肯定会报错
这里我们介绍除了除数与被除数之外的参数含义,以此代码示例为准

BigDecimal result= oneone.divide(one,2, RoundingMode.HALF_UP);

oneone变量标识10(被除数),one变量标识3(除数)
参数 “2” 代表保留两位小数
RoundingMode.HALF_UP 为不过时方法的核心参数,仔细阅读源码会发现,这个变量只不过是被包了一层而已,底层还是过时方法的变量
总结:换汤换药,不要被方法过时给蒙蔽了,他只是想让你用这个常量作为入参。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值