Java核心类库—集合框架—List实现类性能和特点

面向接口编程:

接口类型 变量 = new 实现类();

List list = new ArrayList();

 

List实现类特点和性能分析

 

三者共同的特点

1.允许元素重复

2.记录元素的先后添加顺序

 

Vector类:底层才有数组结构算法,方法都使用了synchronize修饰,线程安全,但是性能较低

ArrayList类:底层才有数组结构算法,方法没有使用synchronize修饰,线程不安全,但性能相对于Vector较高。

ArrayList现在基本以取代了Vector

为了保证ArrayList的线程安全,List list = Collection.synchronizeList(new ArrayList(...));

LinkedList类:底层才有双向链表结构算法。方法没有使用synchronize修饰,线程不安全

数组结构算法和双向链表结构算法的性能问题

  数组结构算法:插入和删除操作速度抵,查询和更改较快。

  双向链表结构算法:插入和删除操作速度快,查询和更改较慢。

 

使用选择:

Vector类打死不要用如果要用就选择ArrayList类

如果删除和插入操作频繁,应该选择LinkedList

如果查询操作频繁,应该选用ArrayList

开发中ArrayList较多,根据具体情况选择。

posted @ 2017-03-18 16:52  wenxudong  阅读(146)  评论(0编辑  收藏  举报