List<Integer>list =new ArrayList<Integer>(); <Integer> 什么意思?

如题所述

List是一个接口,而ArrayList 是一个类。 ArrayList 继承并实现了List。

List list = new ArrayList();这句创建了一个ArrayList的对象后把上溯到了List。此时它是一个List对象了,有些ArrayList有但是List没有的属性和方法,它就不能再用了。而ArrayList list=new ArrayList();创建一对象则保留了ArrayList的所有属性。

扩展资料:

List 接口的大小可变数组的实现,位于API文档的java.util.ArrayList<E>。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。

每个 ArrayList 实例都有一个容量。该容量是指用来存储列表元素的数组的大小。它总是至少等于列表的大小。

参考资料来源:百度百科-arraylist

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-06-06
List是一个接口,而ArrayList 是一个类。 ArrayList 继承并实现了List。
List list = new ArrayList();这句创建了一个ArrayList的对象后把上溯到了List。此时它是一个List对象了,有些ArrayList有但是List没有的属性和方法,它就不能再用了。而ArrayList list=new ArrayList();创建一对象则保留了ArrayList的所有属性。

为什么一般都使用 List list = new ArrayList() ,而不用 ArrayList alist = new ArrayList()呢?
问题就在于List有多个实现类,如 LinkedList或者Vector等等,现在你用的是ArrayList,也许哪一天你需要换成其它的实现类呢?,这时你只要改变这一行就行了:List list = new LinkedList(); 其它使用了list地方的代码根本不需要改动。假设你开始用 ArrayList alist = new ArrayList(), 这下你有的改了,特别是如果你使用了 ArrayList特有的方法和属性。 ,如果没有特别需求的话,最好使用List list = new LinkedList(); ,便于程序代码的重构. 这就是面向接口编程的好处
第2个回答  推荐于2018-02-27
表示了List里面放的对象是什么类型的,这样写就表示了,你List里面放的必须是Integer类型的,别的就会报错,所以,你可以先Integer it = new Integer();list.add(it);这样就相当于再list里面放入了一个Integer对象,你要放别的就不行了,懂了?本回答被提问者和网友采纳
第3个回答  2011-03-15
这是JAVA中的泛型,意思是指你的 ArrayList 容器只能存储 Integer 类型 或 int ( 因其可以自动封装成Integer )类型的数据,就是一种规范
第4个回答  2021-02-06
List 是可以被多个类实现的,ArrayList 只是其中实现的一个而已,
List是一个接口,ArrayList 是一个类。 ArrayList 继承并实现了List。
List list = new ArrayList();这句创建了一个ArrayList的对象后----给到了List。此时它是一个List对象了,有些ArrayList有但是List没有的属性和方法,它就不能再用了(就是他们共同有的方法和属性,可以使用 ;List 有,但是ArrayList没有,则不能用)。
而ArrayList list=new ArrayList();创建一个对象(ArrayList)则保留了ArrayList的所有属性。