当你做这样的事情
BigDecimal bigDecimal = BigDecimal.ONE;
为什么bigDecimal成为一个新对象?
最佳答案
在这种情况下,变量(或字段)bigDecimal
不会成为新对象。它只是对现有静态字段 java.math.BigDecimal.ONE 引用的对象的引用。
对象本身(代表 1
的对象)仅创建一次:加载类 BigDecimal
时。对于 Java 7,这是使用 new BigDecimal(BigInteger.ONE, 1, 0, 1)
完成的。
您所做的分配比使用 = new BigDecimal(...)
自己创建新对象要好,因为现有对象被重新使用。
关于java - BigDecimal bigDecimal = BigDecimal.ONE;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21348400/