List,Set,Map都是接口,前俩个继承Collection接口,Map是独立接口
Set接口相关的实现类:HashSet,LinkedHashSet,TreeSet
List接口相关的实现类:ArrayList,LinkedList,Vector
Map接口相关的实现类:HashMap,HashTable,LinkedHashMap,TreeMap
---总结
1、List有序,可以重复的
- ArrayList
优点:底层数据结构是数组,查询快,增删慢
缺点:线程不安全,效率高
- Vector
优点:底层结构是数组,查询快,增删慢
缺点:线程安全,但效率低
- LinkedList
优点:底层结构是链表,查询慢,但增删快
缺点:线程不安全,效率高
2、Set 无序,唯一的
- HashSet
阐述:底层结构是哈希表,无序,唯一;通过hashCode()和equals()保证元素的唯一性
- LinkedHashSet
阐述:底层结构是链表和哈希表,有序,唯一;由链表保证元素的有序性,哈希表保证元素的唯一性
- TreeSet
阐述:底层结构是红黑树,唯一,有序;