List和ArrayList

Posted luoliuniankk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了List和ArrayList相关的知识,希望对你有一定的参考价值。

  

1.为什么List list = new ArrayList()?

也不是非常夸张的说,一定要用List代替ArrayList接收,只是说这样是良好的编码习惯,便于以后代码可能重构。

首先要明白接口和类的区别。List是接口,ArrayList是类,ArrayList继承并实现了List。

List有多个实现类,如 LinkedList或者Vector等等。现在你要的是ArrayList,以后可能会要改成List的其他实现类。那么这时,你就只需要将ArrayList改为需要的类即可。

便于程序代码的重构. 这就是面向接口编程的好处

技术分享图片

 

2.如何更好的创建集合对象?  -->  静态构造方法

过去:

List<String> list = new ArrayList<>();

现在:

List<String> list = Lists.newArrayList();

同理:

HashMap<Object, Object> objectObjectHashMap = Maps.newHashMap();

HashSet<Object> objects = Sets.newHashSet();

 

接口和类的区别:

原文链接: javacodegeeks 
译文链接: http://www.importnew.com/12399.html

 


以上是关于List和ArrayList的主要内容,如果未能解决你的问题,请参考以下文章

List和ArrayList

Java知识树 集合 ArrayList

片段之间的静态 ArrayList

从list引用调用arraylist和linkedlist对象的方法了解多态

原因 - List list = new ArrayList(); [复制]

ArrayList 与 List 关系与代码示例 - Java