无论是对于新变量的比较还是初始化,它是否会影响您使用哪一个?
我知道BigDecimal.ZERO是一个1.5特性,所以这是一个问题,但假设我使用1.5是否重要?
谢谢.
BigDecimal.ZERO
是一个预定义的常量,因此不必在运行时从字符串中进行求值BigDecimal("0")
.它会更快,不需要创建新对象.
如果您的代码需要在1.5之前运行,那么您可以使用(备受mal的)Singleton模式来创建相当于的对象BigDecimal.ZERO
.第一次使用它时,它将调用BigDecimal("0")
创建一个零对象,并在后续调用中返回该对象.否则,如果您的代码在1.5系统上运行,则您的单例对象只能返回BigDecimal.ZERO
而不会损失运行时.
使用ZERO不会创建新对象或需要任何解析.绝对是要走的路.