List: 有序,按对象进入的顺序保存对象,可重复,允许多个Null元素对象,可以使用Iterator取出所有元素,在逐一遍历,还可以使用get(int index)获取指定下标的元素。
Set:无序,不可重复,最多允许一个Null元素对象,取元素时只能用Iterator接口取得所有元素,在逐一遍历各个元素
首先,他们的底层数据结构不同,ArrayList底层是基于数组实现的,LinkedList底层是基于链表实现的。
由于底层数据结构不同,ArrayList更适合用于查找,LinkedList更适合用于添加删除
ArrayList和LinkedList都实现与接口List,但LinkedList也实现与Deque(双端队列)