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

参考答案

Java 容器分为 Collection 和 Map 两大类,各自都有很多子类


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 可排序键值映射集合
├TreeMap

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

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

在这里插入图片描述可以比较的点:

有序、无序
可重复、不可重复
键、值是否可为null
底层实现的数据结构(数组、链表、哈希...)
线程安全性
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值