Java包装器类应该是不可变的。这意味着一旦创建了对象,例如
Integer i = new Integer(5);
其值不能更改。但是,这样做
i = 6;
是完全有效的。
那么,在这种情况下不变性是什么意思?这与自动装箱/拆箱有关吗?如果是这样,有什么办法可以防止编译器执行此操作?
谢谢
i
是参考。您的代码将引用更改i
为指向另一个相同的,不变的Integer
。
final Integer i = Integer.valueOf(5);
可能会更有用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句