ArrayList和LinkedList的是List的两个儿子。
1.ArrayList是基于动态数组的数据结构,LinkedList基于链表的数据结构。
2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。
3.对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据。
在ArrayList的中间插入或删除一个元素这个列表中剩余的元素都会被移动;而在LinkedList的中间插入或删除一个元素的花费是固定的。
ArrayList和LinkedList的使用:当操作是在一列数据的后面添加数据而不是在前面或中间,并且需要随机地访问其中的元素时,使用ArrayList会提供比较好的性能;当需要在一列数据的前面或中间添加或删除数据,并且按照顺序访问其中的元素时,就应该使用LinkedList了。