BigDecimal.ZERO替代new BigDecimal(0)

本文分享如何在定义BigDecimal变量时,优先使用BigDecimal.ZERO等预定义对象,以减少对象创建,提升代码效率。通过实例说明类加载时常量初始化的重要性,并提倡在开发过程中注意复用现成资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这里只是想分享下,平时如果我们想要定义一些BigDecimal类型的变量,可以先看看BigDecimal有没有已经先做了定义,如new BigDecimal(0)就可以用BigDecimal.ZERO来代替,如下:

BigDecimal bigDecimal = BigDecimal.ZERO;

跟进BigDecimal类中,会发现BigDecimal类中已经定义了一些BigDecimal类型的常量数组,如下:
在这里插入图片描述
所以其实在BigDecimal类加载阶段的准备阶段,这些数组就会被初始化了,那自然就可以正常的提供使用,可以把这些数组中定义的各个BigDecimal类型的对象当作缓存,然后优先取缓存中的对象,避免创建重复的对象,这也能够起到优化代码的作用。

总结

用BigDecimal.ZERO替代new BigDecimal(0)只是一个引子,更多想表达的是,以后要定义BigDecimal类时,先看看有没现成的对象能够使用,避免一些没必要的操作。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值