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。
相关推荐
开心香辣派小星16 分钟前
23种设计模式-15解释器模式
java·设计模式·解释器模式
Halo_tjn24 分钟前
虚拟机相关实验概述
java·开发语言·windows·计算机
摆烂z1 小时前
Docker与Jib(maven插件版)实战
java
RainbowSea1 小时前
从 Spring Boot 2.x 到 3.5.x + JDK21:一次完整的生产环境迁移实战
java·spring boot·后端
笨手笨脚の1 小时前
Spring Core常见错误及解决方案
java·后端·spring
奶油松果1 小时前
Springboot自动装配 - redis和redission
java·spring boot·redis
霍夫曼2 小时前
UTC时间与本地时间转换问题
java·linux·服务器·前端·javascript
VX:Fegn08952 小时前
计算机毕业设计|基于Java人力资源管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端·课程设计
荔枝hu2 小时前
springboot和shiro组合引入SseEmitter的一些坑
java·spring boot·后端·sseeitter
老华带你飞2 小时前
健身房|基于springboot + vue健身房管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端