概述
问题出处
今天在做活动统计的时候遇到的问题,数据库使用的字段为字符串来存储金额,解释就是不确定奖励是物品还是金钱,所以使用字符串来存储的,在查询做统计的时候需要对这个字段进行相加操作,本来想了下在mapper里直接使用sql来进行统计,后来测试是行不通的,又因为里面涉及到不同的服务只能在控制层来处理了,因为涉及到了钱,故才使用BigDecimal来做处理,因为第一次用不是太了解,就遇到了好多错,不过最后还是解决了问题,特在此记上一篇.
空指针问题
在使用BigDecimal创建对象的时候,初始化为0,不能看它是一对象就初始化为null
BigDecimal totalPrizeNum = null;//谨记下 false
BigDecimal waitPayment = BigDecimal.ZERO;//true
计算加减乘除的时候得到的结果为0问题
在使用BigDecimal做加法运算时,需要一个对象来接收相加后的值,不然结果就会是0了,下面是它的源码
我下面的所做的运算就是0,原因是相加的结果没有接收
正确的做法
最后
以上就是无私发带为你收集整理的BigDecimal在使用中遇到的问题问题出处的全部内容,希望文章能够帮你解决BigDecimal在使用中遇到的问题问题出处所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复