Java常用集合
原文链接:https://blog.csdn.net/ThinkWon/article/details/104588551
常用的集合类
Map接口和Collection接口是所有集合框架的父接口:
1.Collection接口的子接口包括:Set接口和List接口
2.Map接口的实现类主要有:HashMap、TreeMap、HashtableConcurrentHashMap以及Properties等
3.Set接口的实现类主要有:HashSet、TreeSet、LinkedHashSet等
4.List接口的实现类主要有:ArrayList、LinkedList、Stack以及Vector等
Collection集合主要有List和Set两大接口
List:一个有序(元素存入集合的顺序和取出的顺序一致)容器,元素可以重复,可以插入多个null元素,元素都有索引。常用的实现类有 ArrayList、LinkedList 和 Vector。
Set:一个无序(存入和取出顺序有可能不一致)容器,不可以存储重复元素,只允许存入一个null元素,必须保证元素唯一性。Set 接口常用实现类是 HashSet、LinkedHashSet 以及 TreeSet。
Map是一个键值对集合,存储键、值和之间的映射。 Key无序,唯一;value 不要求有序,允许重复。Map没有继承于Collection接口,从Map集合中检索元素时,只要给出键对象,就会返回对应的值对象。
Map 的常用实现类:HashMap、TreeMap、HashTable、LinkedHashMap、ConcurrentHashMap
集合框架底层数据结构
Collection
1.List
- ArrayList:Object数组
- LinkedList:双向循环链表
- Vector:Object数组
2.Set
- HashSet(无序的,唯一):基于HaspMap实现的,采用HashMap来保存元素
- TreeSet(有序的,唯一): 红黑树(自平衡的二叉树)