Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用带整数的构造函数_Java_List_Object_Integer - Fatal编程技术网

Java 使用带整数的构造函数

Java 使用带整数的构造函数,java,list,object,integer,Java,List,Object,Integer,我是Java新手,对如何使用构造函数有一些疑问。 在什么情况下我应该使用newinteger()语句?看看代码: 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 整数a=129//1. 整数b=

我是Java新手,对如何使用构造函数有一些疑问。 在什么情况下我应该使用
newinteger()
语句?看看代码:

    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
整数a=129//1.
整数b=新整数(129)//2.
列表=新的ArrayList();
添加(新整数(1))//3.
增加(2)//4.
哪一行是糟糕编程实践的例子?

使用new Integer()将保证您有一个新的Integer对象引用

直接使用该值并不能保证这一点,因为将int自动装箱到Integer可能不会进行对象实例化

我会说,在非常奇怪的边缘情况下,你只需要新的整数(1),所以大多数时候我会说你永远不需要做新的整数

另外,请记住,在某些边缘情况下,自动装箱/取消装箱可能会产生一些错误

Integer x = null;
int y = x; // Null Pointer Exception
正在进行自动(取消)装箱的长时间迭代可能会导致性能损失,未经培训的眼睛可能不会注意到这一点。

使用new Integer()将保证您有一个新的Integer对象引用

直接使用该值并不能保证这一点,因为将int自动装箱到Integer可能不会进行对象实例化

我会说,在非常奇怪的边缘情况下,你只需要新的整数(1),所以大多数时候我会说你永远不需要做新的整数

另外,请记住,在某些边缘情况下,自动装箱/取消装箱可能会产生一些错误

Integer x = null;
int y = x; // Null Pointer Exception
长时间的自动(非)装箱迭代可能会带来性能成本,而未经培训的眼睛可能不会注意到这一点,将其作为默认模式使用-这几乎是永久性的,让生活变得更加轻松

自动装箱是Java编译器在原语类型与其对应的对象包装器类之间进行的自动转换。例如,将整数转换为整数

<> P> >与<代码>新的整数< /代码>(见其他答案/注释/链接)相比,我一般不考虑使用<代码>新整数< /代码>一个很好的方法并严格避免它。

用作默认模式-它是永远的,并且使生命变得稍微容易。

自动装箱是Java编译器在原语类型与其对应的对象包装器类之间进行的自动转换。例如,将整数转换为整数


<> P> >与<代码>新的整数< /代码>(见其他答案/注释/链接)略有不同,我一般不考虑使用<代码>新整数< /代码>一个很好的方法,并严格避免它。

您会询问JDK中的每种类型吗?了解每种方法的作用,你就能够自己回答。“在什么情况下我应该使用
newinteger()
语句?”基本上从来没有。请仔细研究一下,你会要求JDK中的每种类型吗?了解每个语句的作用,你就能够自己回答。“在什么情况下我应该使用
newinteger()
语句?”基本上从不。请仔细研究