java 有哪些常用容器(集合)?

java 有哪些常用容器(集合)?

java 容器都有哪些?

Collection

|  ├AbstractCollection 对Collection接口的最小化抽象实现

|  │

|  ├List 有序集合

|  │-├AbstractList 有序集合的最小化抽象实现

|  │-├ArrayList 基于数组实现的有序集合

|  │-├LinkedList 基于链表实现的有序集合

|  │-└Vector 矢量队列

|  │ └Stack 栈,先进后出

|  │

|  ├Set 不重复集合

|  │├AbstractSet 不重复集合的最小化抽象实现

|  │├HashSet 基于hash实现的不重复集合,无序

|  │├LinkedHashSet 基于hash实现的不重复集合,有序

|  │└SortedSet 可排序不重复集合

|  │ └NavigableSet 可导航搜索的不重复集合

|  │ └TreeSet 基于红黑树实现的可排序不重复集合

|  │

|  ├Queue 队列

|  │├AbstractQueue 队列的核心实现

|  │├BlockingQueue 阻塞队列

|  │└Deque 可两端操作线性集合

|

Map 键值映射集合

|  ├AbstractMap 键值映射集合最小化抽象实现

|  ├Hashtable 基于哈希表实现的键值映射集合,key、value均不可为null

|  ├HashMap 类似Hashtable,但方法不同步,key、value可为null

|   └LinkedHashMap 根据插入顺序实现的键值映射集合

|  ├IdentityHashMap 基于哈希表实现的键值映射集合,两个key引用相等==,认为是同一个key

|  ├SortedMap 可排序键值映射集合

|   └NavigableMap 可导航搜索的键值映射集合

|  └WeakHashMap 弱引用建,不阻塞被垃圾回收器回收,key回收后自动移除键值对

可以比较的点:

    有序、无序 可重复、不可重复 键、值是否可为null 底层实现的数据结构(数组、链表、哈希...) 线程安全性

【Java面试题与答案】整理推荐

经验分享 程序员 微信小程序 职场和发展