ArrayList 类提供了List的一种可增长数组的实现。
其优点在于,对get和set的调用花费常数时间。缺点是新项的插入和现有项的删除代价昂贵,除非变动是在ArrayList的末端进行。
LinkedList类提供了List的双链表实现。
其优点在于新项的插入和和现有项的删除均开销很小,这里假设应运项的位置是已知的。这意味着在表的前端进行添加和删除都是常数时间的操作,由此LinkedList提供了方法addFirst , removeFirst ,addLast , removeLast,getFirst , getLast 等以有效添加,删除和访问表两端的项。使用LinkedList的缺点是它不容易作索引,因此对get的调用是昂贵的,除非调用非常接近表的端点。