arrayList——list和arrayList区别

转载 2016年08月31日 11:47:15

转自http://www.cnblogs.com/sipher/articles/2429812.html

list和arrayList区别

List是一个接口,而ListArray是一个类。

ListArray继承并实现了List。
所以List不能被构造,而ListArray就可以被构造。
List list;     //正确   list=null;

List list=new List();    //是错误的用法

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

为什么要用 List list = new ArrayList() ,而不用 ArrayList alist = new ArrayList()呢?
问题就在于List有多个实现类,现在你用的是ArrayList,也许哪一天你需要换成其它的实现类,如 LinkedList或者Vector等等,这时你只要改变这一行就行了:
List list = new LinkedList(); 其它使用了list地方的代码根本不需要改动。
假设你开始用 ArrayList alist = new ArrayList(), 这下你有的改了,特别是如果你使用了 ArrayList特有的方法和属性。

另外的例子就是,在类的方法中,如下声明:
private void doMyAction(List list){}
这样这个方法能处理所有实现了List接口的类,一定程度上实现了泛型函数.

如果开发的时候觉得ArrayList,HashMap的性能不能满足你的需要,可以通过实现List,Map(或者Collection)来定制你的自定义类.


相关文章推荐

C# Array和ArrayList,List区别

  • 2011年12月17日 01:28
  • 274KB
  • 下载

java集合——数组、List和ArrayList、LinkedList的区别

数组: 优点:数组在内存中是连续存储的,所以它的索引速度是非常的快,而且赋值与修改元素也很 简单。 缺点:在数组的两个数据间插入数据...

Array--List--ArrayList 三者的区别(一)——引言篇

了解本章知识前需要掌握基础概念: 数据在计算机中的存储和组织的问题:其实就是——数据结构 这是一个很基础的问题,本质是现实生活中的事物如何装入计算机中并且表示出来的问题。其实就是我们通常说的编码。...

数组丶List和ArrayList的区别

数组、List和ArrayList的区别   有些知识点可能平时一直在使用,不过实际开发中我们可能只是知其然不知其所以然,所以经常的总结会对我们的提高和进步有很大的帮助,这里记录...

C#中数组、ArrayList和List三者的区别

在C#中数组,ArrayList,List都能够存储一组对象,那么这三者到底有什么样的区别呢。 数组     数组在C#中最早出现的。在内存中是连续存储的,所以它的索引速度非常快,而且赋值与修改元...
  • zwk_9
  • zwk_9
  • 2014年07月13日 16:44
  • 280

C# 中数组 、List 、ArrayList 的区别

数组 、List 、ArrayList 的区别 :数组 :优点 : 数组在内存中是连续存储的,所以它的索引速度是非常的快,而且赋值与修改元素也很简单 . C# 代码实例 :string[] arr ...

Hashtable HashMap Vector ArrayList List 区别

Hashtable和HashMap的区别:1.Hashtable是Dictionary的子类,HashMap是Map接口的一个实现类;2.Hashtable中的方法是同步的,而HashMap中的方法在...
  • lclai
  • lclai
  • 2011年02月19日 16:50
  • 840

java 容器类使用 Collection,Map,HashMap,hashTable,TreeMap,List,Vector,ArrayList的区别

java 容器类使用 Collection,Map,HashMap,hashTable,TreeMap,List,Vector,ArrayList的区别 经常会看到程序中使用了记录集,常用的...
  • J__King
  • J__King
  • 2014年09月23日 09:03
  • 802
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:arrayList——list和arrayList区别
举报原因:
原因补充:

(最多只允许输入30个字)