Java集合框架(知识整理)

news/2025/2/23 5:14:26

集合框架

Java 集合框架可以分为两条大的支线:

1、Collection,主要由 List、Set、Queue 组成:

  • List 代表有序、可重复的集合,典型代表就是封装了动态数组的 ArrayList 和封装了链表的 LinkedList;
  • Set 代表无序、不可重复的集合,典型代表就是 HashSet 和 TreeSet;
  • Queue 代表队列,典型代表就是双端队列 ArrayDeque,以及优先级队列 PriorityQueue。

2、Map,代表键值对的集合,典型代表就是 HashMap。

一、List

  • 特点:存取有序,可以存放重复的元素,可以用下标对元素进行操作。

1)javabetter.cn/collection/arraylist.html#_01%E3%80%81%E5%88%9B%E5%BB%BA-arraylist" rel="nofollow">ArrayList

  • 特点:

    • ArrayList 是由动态数组实现的,支持随机存取,也就是可以通过下标直接存取元素;
    • ArrayList 在数组的基础上实现了自动扩容,并且提供了比数组更丰富的预定义方法(各种增删改查),非常灵活;
    • 从尾部插入和删除元素会比较快捷,从中间插入和删除元素会比较低效,因为涉及到数组元素的复制和移动;
    • 如果内部数组的容量不足时会自动扩容,因此当元素非常庞大的时候,效率会比较低
  • 创建:

    java">//下面两个创建的效果是差不多的
    ArrayList<String> alist = new ArrayList<String>();
    List<String> alist = new ArrayList<>();
    
    //非常确定 ArrayList 中元素的个数,在创建的时候还可以指定初始大小
    List<String> alist = new ArrayList<>(20);            
    
  • 功能:

    • 基本数组的增删改查,不过当添加删除中间的元素时,对应后续的元素位置得跟着向后向前移,考虑时间复杂度等性能
    • 扩容需要重新复制数组的

javabettercncollectionlinkedlisthtml_47">2)


http://www.niftyadmin.cn/n/5862973.html

相关文章

【CS285】高斯策略对数概率公式的学习笔记

公式介绍 在【CS285】中提到了高斯策略对数概率公式的公式如下&#xff1a; log ⁡ π θ ( a t ∣ s t ) − 1 2 ∥ f ( s t ) − a t ∥ Σ 2 const \log \pi_{\theta}(\mathbf{a}_t | \mathbf{s}_t) -\frac{1}{2} \left\| f(\mathbf{s}_t) - \mathbf{a}_t \right\|_{\S…

深入理解HttpSecurity的设计

一、HttpSecurity的应用 在前章节的介绍中我们讲解了基于配置文件的使用方式,也就是如下的使用。 也就是在配置文件中通过 security:http 等标签来定义了认证需要的相关信息,但是在SpringBoot项目中,我们慢慢脱离了xml配置文件的方式,在SpringSecurity中提供了HttpSecurity…

账号存活率骤降19%?2025跨境账号安全白皮书预警

账号安全危机来袭&#xff0c;跨境电商如何应对挑战&#xff1f; 在全球电商产业快速扩张的今天&#xff0c;账号安全问题日益严峻&#xff0c;尤其是在跨境电商领域。根据2025年《跨境账号安全白皮书》的报告&#xff0c;跨境电商平台账号存活率骤降19%&#xff0c;这一令人震…

2025.2.23机器学习笔记:PINN文献阅读

2025.2.23周报 一、文献阅读题目信息摘要Abstract创新点网络架构架构A架构B架构C 实验结论后续展望 一、文献阅读 题目信息 题目&#xff1a; Physics-Informed Neural Networks for Modeling Water Flows in a River Channel期刊&#xff1a; IEEE TRANSACTIONS ON ARTIFICI…

鸿蒙NEXT开发-学生管理系统小案例

注意&#xff1a;博主有个鸿蒙专栏&#xff0c;里面从上到下有关于鸿蒙next的教学文档&#xff0c;大家感兴趣可以学习下 如果大家觉得博主文章写的好的话&#xff0c;可以点下关注&#xff0c;博主会一直更新鸿蒙next相关知识 目录 1. 基本介绍 2. 案例设计图 2.1 app应用…

Linux下基于root指定用户执行命令的方法

个人博客地址&#xff1a;Linux下基于root指定用户执行命令的方法 | 一张假钞的真实世界 Docker在构建镜像阶段无法配置免密码sudo。但是在实际需求场景中会遇到需要使用sudo的场景。所以&#xff0c;我的解决思路是镜像构建及CMD使用root&#xff0c;在CMD的脚本中执行需要su…

智能网络感知,打造极致流畅的鸿蒙原生版中国移动云盘图文体验

背景 中国移动云盘&#xff08;原“和彩云网盘”&#xff09;是中国移动重磅推出的安全、智能、不限速、移动用户免流的智能云盘&#xff0c;致力于成为5G时代用户个人与家庭的数字资产管理中心&#xff0c;是中国移动继语音、短信、流量后的“第四项基础服务”。 照片、音视…

Linux系统编程基础详解

Linux 系统详解 大纲 引言 Linux 的定义Linux 的历史与发展本文结构概述 Linux 的基本概念 Linux 的架构 内核与用户空间系统调用 Linux 的文件系统 文件与目录结构权限管理 Linux 的进程管理 进程与线程进程调度 Linux 的基本命令与操作 常用命令概述 文件与目录操作命令文…