今天爱分享给大家带来说出 ArrayList,Vector, LinkedList 的存储性能和特性。【面试题详解】,希望能够帮助到大家。
【参考答案】
ArrayList 和 Vector 都是使用数组方式存储数据,此数组元素数大于实际存储的数据
以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动
等内存操作,所以索引数据快而插入数据慢,Vector 由于使用了 synchronized 方法(线程
安全),通常性能上较 ArrayList 差,而 LinkedList 使用双向链表实现存储,按序号索引数
据需要进行前向或后向遍历,但是插入数据时只需要记录本项的前后项即可,所以插入速度
较快。
LinkedList 也是线程不安全的,LinkedList 提供了一些方法,使得 LinkedList 可以被
当作堆栈和队列来使用。