ArrayList和LinkedList的区别

看了很多别人博客里写的,感觉写的都是些理论的说法,自己还是不是很清楚,所以自己简单的写一下,本人菜鸟希望大牛们指导

List是一个接口,ArrayList和LinkedList是两个实现类,他们实现的方式不一样,其实LinkedList才是真正的链表
ArrayList:内存使用量要大一些,添加删除元素效率较低。元素随机访问的效率较高。
LinkedList则相反
LinkedList因为成员方法大多是synchronized的,因此LinkedList是线程安全的而ArrayList不是线程安全的
也是因此在单线程程序中ArrayList效率更高..

ArrayList和LinkedList在性能上各有优缺点,都有各自所适用的地方,总的说来可以描述如下:

性能总结:

     -     add()操作     delete()操作      insert操作        index取值操作     iterator取值操作  
ArrayList/Vector/Stack      好            差                差                    极优            极优  
LinkedList      好            好                好                    差              极优    
posted on 2013-11-20 10:53  蓝天依旧  阅读(245)  评论(0编辑  收藏  举报