我是 Java 新手,我有一些关于使用构造函数的问题。
在什么情况下我应该使用new Integer()
陈述?看代码:
Integer a = 129;//1
Integer b = new Integer(129);//2
List<Integer> list= new ArrayList<Integer>();
list.add(new Integer(1));//3
list.add(2);//4
哪一行是不良编程实践的示例?
最佳答案
使用 new Integer() 将保证您有一个新的 Integer 对象引用。
直接使用该值并不能保证这一点,因为自动装箱 int 到 Integer 可能不会执行该对象实例化。
我想说你只需要 new Integer(1) 在非常奇怪的边缘情况下,所以大多数时候我会说你永远不需要做 new Integer...
另请记住,在某些边缘情况下,自动装箱/拆箱可能会产生一些错误。
Integer x = null;
int y = x; // Null Pointer Exception
发生自动(取消)装箱的长时间迭代可能会产生未经训练的眼睛可能不会注意到的性能成本
关于java - 将构造函数与 Integer 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19037640/