您的位置:首页 > 其它

List实现类性能和特点分析

2018-03-22 20:17 218 查看
面向接口编程:

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

List list = new ArrayList();

List实现类特点和性能分析:

三者共同的特点(共同遵循的规范):

1):允许元素重复.

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

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

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

ArrayList现在机会已经取代了Vector的江湖地位.

为了保证ArrayList的线程安全,List list = Collections.synchronizedList(new ArrayList(…));

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

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

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

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

使用的选择:

Vector类打死不用!即使要用选ArrayList类.

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

如果查询操作频繁,应该使用ArrayList类.

在开发中使用ArrayList较多,根据具体的需求环境来做选择.

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: