new BigDecimal(0)和BigDecimal.ZERO的区别

从代码质量角度,推荐使用BigDecimal.ZERO而非new BigDecimal(0),可避免额外实例化和文字包含。若代码需在1.5之前运行,可用单例模式创建等于BigDecimal.ZERO的对象;在1.5系统上运行,单例对象返回BigDecimal.ZERO无运行时损失。
推荐使用BigDecimal.ZERO

从代码质量的角度来看,BigDecimal.ZERO最好使用,new BigDecimal(0)因为这样可以避免额外的实例化并在代码中包含文字。
如果您的代码需要在1.5之前运行,那么您可以使用(备受诟病)单例模式创建一个等于 BigDecimal.ZERO 的对象。第一次使用时,它会调用 BigDecimal(0”)来创建一个零对象,并在后续调用中返回该对象。否则,如果您的代码在1.5系统上运行,则您的单例对象只能返回 BigDecimal.ZERO ,而不会造成运行时损失。

帮我优化一下java代码: public void dataProcess(List<Base101> thisYearResults,List<Base101> lastYearResults){ //今年数据 BigDecimal thisYearFE = BigDecimal.ZERO; BigDecimal thisYearFF = BigDecimal.ZERO; BigDecimal thisYearFG = BigDecimal.ZERO; BigDecimal thisYearFH = BigDecimal.ZERO; BigDecimal thisYearFI = BigDecimal.ZERO; BigDecimal thisYearFJ = BigDecimal.ZERO; BigDecimal thisYearFK = BigDecimal.ZERO; BigDecimal thisYearFL = BigDecimal.ZERO; BigDecimal thisYearFM = BigDecimal.ZERO; BigDecimal thisYearFN = BigDecimal.ZERO; BigDecimal thisYearFO = BigDecimal.ZERO; BigDecimal thisYearFP = BigDecimal.ZERO; BigDecimal thisYearFQ = BigDecimal.ZERO; BigDecimal thisYearFR = BigDecimal.ZERO; BigDecimal thisYearGF = BigDecimal.ZERO; BigDecimal thisYearGG = BigDecimal.ZERO; BigDecimal thisYearGH = BigDecimal.ZERO; BigDecimal thisYearGI = BigDecimal.ZERO; BigDecimal thisYearGJ = BigDecimal.ZERO; BigDecimal thisYearGK = BigDecimal.ZERO; BigDecimal thisYearGL = BigDecimal.ZERO; BigDecimal thisYearGM = BigDecimal.ZERO; for (Base101 thisYearResult : thisYearResults) { if (StringUtils.isNotEmpty(thisYearResult.getFE())) { thisYearFE = thisYearFE.add(new BigDecimal(thisYearResult.getFE())); } if (StringUtils.isNotEmpty(thisYearResult.getFF())) { thisYearFF = thisYearFF.add(new BigDecimal(thisYearResult.getFF())); } if (StringUtils.isNotEmpty(thisYearResult.getFG())) { thisYearFG = thisYearFG.add(new BigDecimal(thisYearResult.getFG())); } if (StringUtils.isNotEmpty(thisYearResult.getFH())) { thisYearFH = thisYearFH.add(new BigDecimal(thisYearResult.getFH())); } if (StringUtils.isNotEmpty(thisYearResult.getFI())) { this
03-19
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值