JAVA中的集合有哪些???

引言;

Java 中的集合类主要分为两大类:Collection 接口和 Map 接口。前者是存储对象的集合类,后者存储的是键值对(key-value)。

(这是在IntelliJ IDEA中使用Diagram功能来操作绘制的UML类图)

Set(实现类)

  • HashSet: 基于哈希表,元素无序,不允许重复。
  • LinkedHashSet: 基于链表和哈希表,维护插入顺序,不允许重复。
  • TreeSet : 基于红黑树,元素有序,不允许重复。

List(实现类)

  • ArrayList: 基于动态数组,查询速度快,插入、删除慢。
  • LinkedList: 基于双向链表,插入、删除快,查询速度慢。
  • Vector: 线程安全的动态数组,类似于 ArrayList,但开销较大。

Queue(实现类)

  • PriorityQueue: 基于优先级堆,元素按照自然顺序或指定比较器排序。
  • LinkedList: 可以作为队列使用,支持 FIFO(先进先出)操作。

Map(实现类)

存储的是键值对,给对象(value)设置了一个 key,这样通过 key 可以找到那个 value。

  • HashMap: 基于哈希表,键值对无序,不允许键重复。
  • LinkedHashMap: 基于链表和哈希表,维护插入顺序,不允许键重复。
  • TreeMap : 基于红黑树,键值对有序,不允许键重复。
  • Hashtable: 线程安全的哈希表,不允许键或值为 nul。
  • ConcurrentHashMap: 线程安全的哈希表,适合高并发环境,不允许键或值为 null。
相关推荐
Lei活在当下5 分钟前
【现代 Android APP 架构】09. 聊一聊依赖注入在 Android 开发中的应用
java·架构·android jetpack
不穿格子的程序员34 分钟前
从零开始刷算法-栈-括号匹配
java·开发语言·
lkbhua莱克瓦241 小时前
Java练习-正则表达式 1
java·笔记·正则表达式·github
yue0081 小时前
C#类继承
java·开发语言·c#
凯芸呢1 小时前
Java中的数组(续)
java·开发语言·数据结构·算法·青少年编程·排序算法·idea
竹竹零2 小时前
JacksonUtil--序列化与反序列化
java·开发语言·windows
钱多多_qdd2 小时前
基础篇:IoC(三):Bean实例化策略InstantiationStrategy
java·spring
float_com2 小时前
【java基础语法】---- 综合训练
java
Dyan_csdn2 小时前
springboot系统设计选题3
java·spring boot·后端
sheji34162 小时前
【开题答辩全过程】以 基于Java的旅游网站的设计与开发为例,包含答辩的问题和答案
java·开发语言·旅游