集合专题·拔高·壹

news2025/2/22 0:35:11

文章目录

  • 1 Collection单列集合、Map双列集合
    • 1.1 Collection单列集合
      • 1.1.1 Collection单列集合及其实现类
        • 1.1.1.1 list集合与Array数组
          • 1.1.1.1.1 ArrayList
          • 1.1.1.1.2 LinekdList
          • 1.1.1.1.2 Vector
            • 1.1.1.1.2.1 ArrayList、Vector (线程安全)的区别是什么
            • 1.1.1.1.2.2 哪些集合类是线程安全的
        • 1.1.1.2 Set集合
          • 1.1.1.2.1 HashSet
          • 1.1.1.2.2 LinkedHashSet
          • 1.1.1.2.3 TreeSet

1 Collection单列集合、Map双列集合

在这里插入图片描述

1.1 Collection单列集合

每个元素只包含一个值

1.1.1 Collection单列集合及其实现类

在这里插入图片描述

1.1.1.1 list集合与Array数组

list集合:添加的元素是有序的、可重复的、有索引

  • list转换为数组:调用List实现类(多态)的toArray方法

Array数组:数组只能存储一类元素、数组有索引、可以重复、数组初始化时需要指定大小list无需

  • 数组转换成list:调用Arrays(加s的大部分情况都是工具类)的asList方法。
1.1.1.1.1 ArrayList

ArrayList底层基于数组实现:查询较快、增删较慢

  • 查询较快:查询时候有索引
  • 增删较慢:每增加或者删除一个,后边的元素都需要移动

底层基于数组实现,特点:有序、可重复、有索引

1.1.1.1.2 LinekdList

LinekdList底层基于双向循环链表实现:查询较慢、增删较快

  • 查询慢:双向链表有头、尾节点查询一个一个查找需确认这两个节点所以慢
  • 增删快:根据头尾节点便可完成删除、增加操作

基于双向链表实现:有序、可重复、有索引

1.1.1.1.2 Vector

Vector:线程安全的,性能低,已逐渐被ArrayList取代。

1.1.1.1.2.1 ArrayList、Vector (线程安全)的区别是什么
VectorArrayList
线程安全的线程不安全(单线程使用)
扩容时,Vector扩容100%ArrayList 扩容50%(节省内存)
单线程环境,我们使用ArrayList
1.1.1.1.2.2 哪些集合类是线程安全的

① Vector:比ArrayList多了同步锁机制
② Stack :堆栈类,先进后出,不常用
③ Hashtable:比HashtMap就多了个线程安全(性能就低了),所以还是建议HashtMap

1.1.1.2 Set集合

1.1.1.2.1 HashSet
1.1.1.2.2 LinkedHashSet
1.1.1.2.3 TreeSet

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/457377.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【数据结构与算法】前缀和+哈希表算法

文章目录 一、引入二、前缀和与哈希表的结合三、例题3.1 和为 K 的子数组3.2 统计「优美子数组」3.3 路径总和III 四、总结 一、引入 关于前缀和和哈希这两个概念大家都不陌生,在之前的文章中也有过介绍:前缀和与差分算法详解 而哈希表最经典的一题莫过…

Kerberos设计和落地长常识

Kerberos 处理三类安全对象 票证 kerberos票证授予服务给每个客户发一张标记,该标记发送给一个特殊的服务器,证实kerberos最近已经认证了发送者,票证包括过期时间和新生成的会话密钥供客户和服务器使用。 认证 由客户构造的一个标记&#xff…

LVS负载均衡之NAT模式

实验准备四台虚拟机 192.168.255.128 做负载均衡器(两张网卡,且都需要NAT模式) 192.168.255.130 Nginx节点服务器1 192.168.255.131 Nginx节点服务器2 192.168.255.132 nfs共享服务器 现将四台虚拟机的防火墙关闭 一、nfs服务器配置 1…

使用Visual Studio 创建Windows服务,并安装部署

创建服务的工程 Program.cs是入口类,Service1.cs是写服务功能的组件,类似于winform项目中的Form1.cs。 打开Service1.cs,(右键单击Service1.cs,选择查看源码) OnStart:服务启动时,执…

产品说明书应该如何制作?

在当今互联网时代,产品说明书无疑是一种展示产品特性、引导用户使用和解决用户问题的重要方式。一份精心制作的产品说明书,能够让用户更快地了解和掌握产品的使用方法,让用户充分享受产品带来的便利。不过要做出一份高质量的产品说明书&#…

算法:在指定范围内生成随机不重复的位置

问题: 在游戏中,我们经常会遇到以下问题:在指定的范围内生成随机不重复的位置。 比如某次“神官赐福”活动中,需要在城门口生成n个不重复的宝箱。 针对这种问题,我们可以先将范围按照宝箱(基本单元格&#…

塔望食研院丨百年益生菌,千亿市场正蓝海!

2022年12月塔望咨询开设塔望食品大健康消费研究院(简称塔望食研院)栏目,塔望食研院以“为食品行业品牌高质量发展赋能”为理念,将不定期发布食品大健康行业研究、消费研究报告。塔望食研院致力于结合外部数据、消费调研数据、企业…

目标追踪篇---yolov8_tracking复现

文章目录 目标追踪篇---yolov8_tracking复现1、下载源代码2、下载权重3、运行代码3.1、运行以下命令:3.2、结果如下3.3、视频结果 目标追踪篇—yolov8_tracking复现 本人的另一篇博客,本博客主要是源代码更新产生的新博客,比较过后两者还是有…

计算多列迭代次数的一种平均列近似方法

比较多列训练集的迭代次数,把多列训练集用单列近似,再通过计算单列的斥力比较迭代次数的大小顺序。 ( A, B )---3*30*2---( 1, 0 )( 0, 1 ) 让网络的输入有3个节点,AB各由5张二值化的图片组成,让A中有5个1,B中全是0&a…

魔兽服务端 MANGOS 数据库结构表中文解释

魔兽服务端 MANGOS 数据库结构表中文解释 MANGOS 数据库结构表 achievement_reward 巫妖王的奖励成就 areatrigger_involvedrelation 传送(区域触发)_包含的任务关系 areatrigger_scripts 区域触发脚本 areatrigger_tavern 进传送门…

优维低代码:个性化桌面配置

导语 优维低代码技术专栏,是一个全新的、技术为主的专栏,由优维技术委员会成员执笔,基于优维7年低代码技术研发及运维成果,主要介绍低代码相关的技术原理及架构逻辑,目的是给广大运维人提供一个技术交流与学习的平台。…

分布式系统概念和设计——安全模型中的设计和思考落地

分布式系统概念和设计 安全性攻击的形式——窃听,伪装,篡改,拒绝服务等。 可靠的分布式系统设计必须解决暴露的服务接口和不安全网络的问题,而攻击者可能了解其中所使用的算法并部署计算资源。 密码学为消息的私密性和完整性以及认…

Windows环境下的静态库和动态库的使用详解

文章目录 简介lib库的详细说明第一种是静态lib库第二种是lib导入库两种库的说明两种lib库的相同点和不同点 在visual studio下静态lib库的导出和使用导出过程演示使用过程演示使用方式一使用方式二使用方式三使用方式四使用方式五使用方式六使用方式七其他组合方式 在visual st…

2022-04-24:用go语言重写ffmpeg的muxing.c示例。

2022-04-24:用go语言重写ffmpeg的muxing.c示例。 答案2022-04-24: 本程序的大体过程如下: 打开输出文件并写入头部信息。 添加音频和视频流,并为每个流创建 AVCodecContext 对象,根据输入格式设置编码器参数&#x…

Volatile与ThreadLocal

一:Volatile 线程安全三方面 1 可见性:一个线程对共享变量修改,另一个线程可以看到最新结果 2 有序性: 一个线程内,代码编写按顺序执行 3 原子性: 一个线程内多行代码以一个整体运行,期间不能…

查询网站ip地址

IP地址是Internet Protocol(互联网协议)的一部分,是一个32位的数字,用于标识网络中的设备。它可以让不同的设备在网络上进行通信和交流,是网络通信的基础。IP地址的应用非常广泛,它可以用于识别和定位设备&…

最新数据, 芯片工程师平均月薪高达2.56W !

近日,据2023年一季度经济运行数据统计,其中提及全国居民人均可支配收入达到10870,同比增长3.8%。 2023年第一季度中,共有20个行业平均月薪超1W,除了大家所熟悉的金融行业薪资水平排名靠前,一些高技术制造业…

iOS SFSpeechRecognizer 语音识别

SFSpeechRecognizer 属于 Speech 框架,在 iOS 10 首次出现,并在 iOS13 中进行了比较重大的更新,在 iOS 13 上支持离线语音识别以及语音分析。WWDC2019 展示了其在 AI 领域的进步,其中 iOS 13 设备内置语音识别就是一项比较不错功能…

第二届中国抗衰老化妆品产业发展论坛暨国粹国妆品牌与文化交流会在京召开

消费日报网讯(记者 王儒)4月18日,以“国粹国妆 抗衰美丽“为主题的第二届中国抗衰老化妆品产业发展论坛暨国粹国妆品牌与文化交流会在北京召开。大会旨在挖掘国粹力量,搭建沟通交流合作的平台,推动中国高端化妆品品牌建…

网工神器:PNETLab模拟器踩坑过程

目录 0、前言 1、PNETLab介绍 2、下载安装 2.1 下载 2.2 导入 2.3 启动 2.4 注册和登录 3、汉化 4、镜像 5、控制台 5.1、HTML控制台 5.2、默认控制台 6、总结 0、前言 由于工作需要,想测试一下SD-WAN,手边既没有测试环境又没有测试设备。突然想…