Java中有哪些常见的容器?
下文笔者讲述java中常见的容器简介说明,如下所示:
常见的容器有以下几种: Collection: 用于存储对象集合 list、Set、Queue Map: 用于存储键值对集合 HashMap、LinkedHashMap、TreeMap、HashTable各容器简介说明:
- List接口(有序,可重复)
- ArrayList:底层是动态数组,支持随机访问
- LinkedList:底层是双向链表,只能顺序访问
- Set接口(不可重复)
- HashSet(无序):基于哈希表。支持快速查找,但不支持有序性操作,且不维持插入顺序信息
- TreeSet(有序):底层是红黑树。支持快速查找(O(logn))但效率比HashSet(O(1))低。支持有序性操作,例如在一定范围内查找元素
- LinkedHashSet(有序):底层是链表+哈希表。使用哈希表存储元素,再维护一个双向链表保存元素的插入信息
- Queue接口
- LinkedList:可实现双向队列
- PriorityQueue:基于堆结构的优先队列
- Map接口
- HashMap:基于哈希表
- LinkedHashMap:使用双向链表维护插入顺序
- HashTable:线程安全的HashMap,已淘汰。推荐ConcurrentHashMap
- TreeMap:基于红黑树
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。