arraylist vector linkedlist
ArrayList是为可变数组实现的,当更多的元素添加到ArrayList的时候,它的大小会动态增大。它的元素可以通过get/set方法直接访问,因为ArrayList本质上是一个数组。
LinkedList是为双向链表实现的,添加、删除元素的性能比ArrayList好,但是get/set元素的性能较差。
Vector与ArrayList相似,但是它是同步的。大部分程序员都使用ArrayList,而不是Vector,因为他们可以自己做出明确的同步操作。
如果你的程序是线程安全的,ArrayList是一个比较好的选择。当更多的元素被添加的时候,Vector和ArrayList需要更多的空间。Vector每次扩容会增加一倍的空间,而ArrayList增加50%。