老生常谈Java中List与ArrayList的区别
更新时间:2022年08月31日 14:55:35 作者:ycylikestuty
大家都知道List是接口,ArrayList是List接口的一个实现类,接下来通过本文给大家介绍Java中List与ArrayList的区别,需要的朋友可以参考下
1 概念方面
List是接口,ArrayList是List接口的一个实现类
2 初始化方面
2.1 List
2.1.1 错误写法
List list=new List();//因为List是接口,不能创建实例对象
2.1.2 正确写法
2.1.2.1 不指定存取数据类型
List list=new ArrayList(); //此时list存取的数据类型是不固定的,可以存取String,Integer甚至Object类型 list.add(1); list.add("dda"); for(Object x:list){ System.out.println(x); }
2.1.2.2 指定存取数据类型
List<Integer> list=new ArrayList<>(); //或者写成List<Integer> list=new ArrayList<Integer>(); //不过一般采用第一种写法 list.add(2); list.add(12); for(Integer x:list){ System.out.println(x); }
2.2 ArrayList
初始化和List差不多,只是把List改为了ArrayList
2.2.1 不指定存取数据类型
ArrayList arrayList=new ArrayList(); arrayList.add(1); arrayList.add("dda"); for(Object x:arrayList){ System.out.println(x); }
2.2.2 指定存取数据类型
ArrayList<String> arrayList=new ArrayList<>(); arrayList.add("dd"); arrayList.add("yyds"); for(String x:arrayList){ System.out.println(x); }
2.3 区别
- List list=new ArrayList()创建了一个ArrayList实现类的对象后把它上溯到了List接口。此时它就是一个List对象,所以不能调用ArrayList类有的,但是List接口没有的属性和方法,只能调用两者共有的属性和方法
- 而ArrayList list=newArrayList()创建了一个ArrayList实现类的对象,所以保留了ArrayList的所有属性和方法
ArrayList<Integer> arrayList=new ArrayList<>(); List<Integer> list=new ArrayList<>(); arrayList.trimToSize(); //list.trimToSize();写法错误 //因为List没有trimToSize方法
到此这篇关于Java中List与ArrayList的区别的文章就介绍到这了,更多相关java List和ArrayList的区别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
springboot+vue实现websocket配置过程解析
这篇文章主要介绍了springboot+vue实现websocket配置过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2020-04-04Java之idea @NotNull @Nullable 注解使用
这篇文章主要介绍了Java之idea @NotNull @Nullable 注解使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-01-01SpringBoot 使用Prometheus采集自定义指标数据的方案
这篇文章主要介绍了SpringBoot 使用Prometheus采集自定义指标数据,我们在k8s集群成功搭建了Prometheus服务,今天,我们将在springboot2.x中使用prometheus记录指标,需要的朋友可以参考下2022-10-10
最新评论