Java中ArrayList、Vector与LinkedList有什么区别

来源:互联网 发布:webgl高级编程pdf下载 编辑:程序博客网 时间:2024/06/06 00:24

        ArrayList、Vector与LinkedList三者均为可以动态改变长度的数组,都是List接口的实现类。

        ArrayList与Vector都会在内存中开辟一块连续的空间来存储,所以根据索引读取数据速度比较,但是往容器中间插入元素需要移动元素,所以效率比较低。其中Vector线程安全的,ArrayList则是线程不安全的。

       LinkedList是通过双向链表(它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱)实现的,所以随机访问效率比较低,需要从列表头开始遍历。但是插入的时候不需要对列表进行移动,效率比较高

阅读全文
1 0
原创粉丝点击