类图如下
图片说明
集合表示一组被称为其元素的对象
Collection、List、Set接口:
1.Collection是集合层次结构中的根接口,有两个子接口,List和Set,没有直接的实现类。
2.有些集合允许重复元素(List),有些不允许(Set)。
3.List集合是提供索引的,可以对其进行for循环遍历,提供了get方法;set集合是没有提供索引的,所以不支持for循环遍历,没有get方法。
4.List集合插入的元素是有序的;set集合下的实现类HashSet和LinkedHashSet插入的元素是无序的,只有实现类TreeSet中插入的元素是有序的。
5.可以使用迭代器或者foreach语句对所有集合遍历

ArrayList:
底层使用数组存储元素,优点:查询元素效率较高,插入和删除元素效率较低(线程不同步)

LinkedList:
底层使用双向链表存储元素,优点:插入和删除元素效率较高,查询元素效率较低(线程不同步)