首页/新闻资讯/正文详情

【集合简要】

发布时间:2026/9/25 6:17:59 来源:云帆数科 栏目:资讯中心
【集合简要】
作者TheMythWS.座右铭不走心的努力都是在敷衍自己让自己所做的选择熠熠发光。目录1️⃣什么是集合2️⃣集合结构图3️⃣集合的应用场景1.什么是集合【1】数组集合都是对多个数据进行存储操作的简称为容器。PS:这里的存储指的是内存层面的存储而不是持久化存储.txt,.avi,.jpg,数据库。【2】数组特点1数组一旦指定了长度那么长度就被确定了不可以更改。int[] arr new int[6];2数组一旦声明了类型以后数组中只能存放这个类型的数据。数组中只能存放同一种类型的数据。int[] arr,String[] s,double[] d.....【3】数组缺点1数组一旦指定了长度那么长度就被确定了不可以更改。2删除增加元素 效率低。3数组中实际元素的数量是没有办法获取的没有提供对应的方法或者属性来获取4数组存储有序可重复 对于无序的不可重复的数组不能满足要求。【4】正因为上面的缺点引入了一个新的存储数据的结构---》集合【5】集合一章我们会学习很多集合为什么要学习这么多集合呢因为不同集合底层数据结构不一样。集合不一样特点也不一样Java集合是一组用于存储和操作对象的容器类。它提供了各种数据结构和算法用于管理和操作对象的集合。Java集合框架提供了一组接口和类用于表示不同类型的集合包括列表、集合、映射和队列等。Java集合框架的核心接口包括Collection表示一组对象的集合。它是最基本的集合接口定义了一些通用的操作如添加、删除、查找、迭代等。List有序集合允许重复元素。可以通过索引访问元素。Set无序集合不允许重复元素。元素是唯一的。Queue队列通常以先进先出FIFO的方式处理元素。Map表示键值对的映射集合。它提供了通过键查找值的功能。键是唯一的值可以重复。HashMap基于哈希表实现的无序键值对集合。TreeMap基于红黑树实现的有序键值对集合。Java集合框架还提供了一些实用工具类如Collections和Arrays用于操作和转换集合。Java集合框架的设计目标是提供高性能、类型安全、可扩展和易用的集合类以满足各种应用场景的需求。它提供了丰富的功能和灵活的接口可以方便地处理各种数据集合操作。2.集合结构图简要集合结构图比较完善的集合结构图1. Collection是一个接口包含了大部分容器常用的一些方法2. List是一个接口规范了ArrayList 和 LinkedList中要实现的方法ArrayList实现了List接口底层为动态类型顺序表LinkedList实现了List接口底层为双向链表3. Stack底层是栈栈是一种特殊的顺序表4. Queue底层是队列队列是一种特殊的顺序表5. Deque是一个接口6. Set集合是一个接口里面放置的是K模型HashSet底层为哈希桶查询的时间复杂度为O(1)TreeSet底层为红黑树查询的时间复杂度为O(log2N)关于key有序7. Map映射里面存储的是K-V模型的键值对HashMap底层为哈希桶查询时间复杂度为O(1)TreeMap底层为红黑树查询的时间复杂度为O(log2N)关于key有序3.集合的应用场景前端后端数据库交互当需要将相同结构的个体整合到一起的时候需要集合。实际应用场合其它应用场景数据库操作在Java应用程序中可以使用集合来存储和操作数据库检索的结果集。将查询结果存储在集合中方便进行筛选、排序和聚合等操作。缓存管理集合可以用作缓存的数据结构将常用的数据存储在内存中以提高访问速度。通过合适的缓存策略如LRU管理集合中的数据。日志记录在日志记录中可以使用集合来存储和管理日志条目。例如使用ArrayList来存储日志记录以便进行搜索、过滤和分析。任务调度在任务调度系统中可以使用队列如LinkedBlockingQueue来管理待处理的任务。生产者可以将任务添加到队列而消费者可以从队列中获取任务进行处理。网络通信在网络通信中可以使用集合来存储和管理接收到的消息。例如使用LinkedList来存储接收到的消息队列并使用HashMap来存储已处理的消息。图形用户界面GUI在GUI应用程序中集合可以用于存储和管理用户界面组件。例如使用ArrayList来存储和管理按钮、文本框等组件。数据分析和处理在数据分析和处理领域可以使用集合来存储和处理大量的数据。例如使用HashSet来去重数据使用HashMap进行数据的聚合和分组。并发编程在多线程编程中可以使用并发安全的集合类如ConcurrentHashMap、ConcurrentLinkedQueue来安全地共享和操作数据。

相关推荐

1200CPU故障诊断
1200CPU故障诊断

S7-1200/1500CPU由于扩展模块、PN总线等原因可能会导致系统错误报警。CPU上的ERROR指示灯会亮起,此时需要联锁故障安全控制,我们需要读取CPU的故障信息,这里我们先介绍直接读取ERROR指示灯状态判断。 1、CPU状态指示灯 博途右侧指令树,可以直接搜索"LED"指令,之… · 2026/9/25 6:17:52

中兴微ASR随身WiFi解锁指南:隐藏后台与云控清除全流程
中兴微ASR随身WiFi解锁指南:隐藏后台与云控清除全流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 6:17:52

华为Atlas 300V 24G卡部署YOLO实战:从模型转换到推理调优
华为Atlas 300V 24G卡部署YOLO实战:从模型转换到推理调优

1. Atlas 300V 到底是一张什么样的卡先说结论:Atlas 300V 是华为昇腾系面向边缘推理场景的AI加速卡,24G版本指的是显存容量为24GB。它不是训练卡,而是专门为推理设计的运算加速卡,官方定位是“数据中心推理卡”和“边缘侧智能加速… · 2026/9/25 6:17:52

人工智能数学基础:习题答案+源代码如何帮你彻底弄懂公式
人工智能数学基础:习题答案+源代码如何帮你彻底弄懂公式

简介:一份聚焦人工智能数学基础的资源包,由唐宇迪编著,面向AI学生与从业者,帮助逐项补齐线性代数、概率统计、微积分、最优化、图论、离散数学与动态规划等核心数学短板,通过习题与代码将理论落到实践。压缩包整体约6.… · 2026/9/25 8:20:28

HDMI信号传输原理:从TMDS编码到音频PCM打包的FPGA实现
HDMI信号传输原理:从TMDS编码到音频PCM打包的FPGA实现

HDMI 这玩意儿现在满大街都是,电视、显示器、机顶盒、笔记本、游戏机,甚至树莓派和 FPGA 开发板上都标配。但真要问一句“HDMI 到底是怎么把画面和声音从一根线送过去的”,能说清楚的人并不多。我当初调 FPGA 的 HDMI 输出时,对着… · 2026/9/25 8:20:22

8G显存本地部署minimaxh3:ComfyUI剪枝版+加速LoRA实战
8G显存本地部署minimaxh3:ComfyUI剪枝版+加速LoRA实战

1. 为什么要在8G显存上折腾minimaxh3本地部署先把结论摆在前面:8G显存跑minimaxh3,能跑,但绝对不是“点一下按钮就出片”的体验。我前后折腾了差不多两周,从最初的直接爆显存,到后来能把一段5秒的480P视频稳定生成出来… · 2026/9/25 8:20:16

物联网健康监测系统设计:从树莓派网关到多传感器报警闭环
物联网健康监测系统设计:从树莓派网关到多传感器报警闭环

简介:一套面向物联网开发者和嵌入式学习者的健康监测系统设计资料,围绕树莓派网关、加速度计、音频与视频监测、Web端应用等核心模块展开,覆盖从硬件数据采集、传感器信号处理到云端传输与远程管理的完整链路,可支撑课程设计、项目… · 2026/9/25 8:20:16

Atlas 300V 24G部署YOLO实战:从硬件认知到推理调优全流程
Atlas 300V 24G部署YOLO实战:从硬件认知到推理调优全流程

最近后台私信里问得最多的一个东西,就是Atlas 300V 24G。问来问去其实就两句话:这卡到底是不是运算加速卡?能不能用来部署YOLO?我的回答一直很直接:能,而且就是干这个的。Atlas 300V 24G是华为昇腾阵营里一… · 2026/9/25 8:20:16

让Codex像安全工程师一样审代码:Cloudflare Security Audit Skill解析
让Codex像安全工程师一样审代码:Cloudflare Security Audit Skill解析

现在让任何一个主流编程代理去“审一遍代码安全”,它多半会给你交出一份看似全面的报告:SQL 注入、XSS、SSRF 列得整整齐齐,但仔细一看,全是模型对漏洞定义的通识复述,既没确认数据流是否真的从用户输入走到了危险函数… · 2026/9/25 8:20:16

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码