ArrayList
ArrayList 是一个动态数组,在随机访问元素时性能较高,但插入和删除元素效率较低。ArrayList 都有一个初始容量,代表了数组的大小,在 ArrayList 快满时,会进行扩容操作,每次增长 1.5 倍大小。但 ArrayList 是非同步的,在多线程场景下不要使用。LinkedList 是一个双向链表,由于实现方式不同,它不支持随机访问,但很容易在列表中间进行插入和删除操作。与 ArrayList 一样,LinkedList 也是非同步的。
Vector
Vector 与 ArrayList 类似,基于动态数组实现,但 Vector 是同步的。它的操作与 ArrayList几乎一样。