一、区别
- ArrayList是实现了基于动态数据的数据结构,LinkedList是基于链表结构实现。
- 对于随机访问的get()和set()方法,ArrayList的效率要高于LinkedList,因为LinkedList要移动指针。
- 对于增加和删除操作的add()和remove()方法,LinkedList效率要高于ArrayList,因为ArrayList要移动数据。
二、联系
ArrayList和LinkedList都是List接口的实现类,这两个类都是对List进行操作。List接口里定义了它们必须要实现的方法,比如add(E)、get(int)、remove(int)、set(E)等基本的List操作,然后这两个类就按照它们自己的方法来实现这些List的基本操作。