在《Thinking in Java》中这样描述:
基本的ArrayList,长于随机访问元素,但在List的中间插入和移除元素时较慢。
LinkedList,通过代价较低的在List中间进行的插入和删除操作,提供优化的顺序访问。而且,LinkedList在随机访问方面相对较慢,但其特性集较ArrayList更大。
Arraylist:底层是基于动态数组,动态数组就是改变数组容量方法,创建新的数组,指定新的容量(原来的1.5倍),将旧数组复制到新数组中并本类旧数组指向新数组
LinkedList:双向链表,并实现队列(Queue),双向队列(Deque)接口
待增加并发的内容。