Java集合List

news2025/2/26 15:19:01

List特有方法

在这里插入图片描述

经典多态写法

// 经典的多态写法
List<String> list = new ArrayList<>();

常用API:增删改查

// 添加元素
list.add("Java");
// 添加元素到指定位置
list.add(0, "Python");

// 获取元素
String s = list.get(0);

// 修改元素
list.set(0, "C++");


// 删除元素
list.remove(0);

ArrayList底层原理

在这里插入图片描述在这里插入图片描述

什么是链表

在这里插入图片描述
在这里插入图片描述

LinkedList

LinkedList是基于双向链表实现的

在这里插入图片描述

因为LinkedList能够快速定位首尾元素,所以他有很多关于首尾的方法

在这里插入图片描述

适用场景一:设计队列

在这里插入图片描述

//  适用LinkedList实现队列
LinkedList<String> linkedList = new LinkedList<>();
// 入队
linkedList.add("Java");
linkedList.add("Python");
// 出队
String first = linkedList.removeFirst();
System.out.println(linkedList);

实现场景2:设计栈

在这里插入图片描述

// 使用LinkedList实现栈
LinkedList<String> stack = new LinkedList<>();
// 入栈
stack.push("Java");
stack.push("Python");
// 出栈
String pop = stack.pop();
System.out.println(stack);

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

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

相关文章

【Python】报错ModuleNotFoundError: No module named fileName解决办法

1.前言 当我们导入一个模块时&#xff1a; import xxx &#xff0c;默认情况下python解释器会搜索当前目录、已安装的内置模块和第三方模块。 搜索路径存放在sys模块的path中。【即默认搜索路径可以通过sys.path打印查看】 2.sys.path.append() sys.path是一个列表 list ,它里…

如何在Ubuntu系统使用docker部署DbGate容器并发布至公网可访问

文章目录 1. 安装Docker2. 使用Docker拉取DbGate镜像3. 创建并启动DbGate容器4. 本地连接测试5. 公网远程访问本地DbGate容器5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定公网地址远程访问 本文主要介绍如何在Linux Ubuntu系统中使用Docker部署DbGate数据库管理工…

vue实现从本地上传头像功能

上传头像&#xff1a; <template><div><el-card class"box-card"><div slot"header" class"clearfix"><span>更换头像</span></div><div><!-- 图片、用来展示用户选择的头像 --><img…

2024年国内最受欢迎的10大热门城市

如果你还没有计划好2024年的旅游行程&#xff0c;不妨考虑这些热门城市&#xff0c;去感受它们的魅力吧&#xff01;在时光流转的车轮下&#xff0c;中国城市风貌日新月异&#xff0c;各具特色的城市正以其独特的魅力吸引着国内外的目光。 近日&#xff0c;依据大数据及网络热度…

功能强大的开源数据中台系统 DataCap 2024.03.1 发布

推荐一套基于 SpringBoot 开发的简单、易用的开源权限管理平台&#xff0c;建议下载使用: https://github.com/devlive-community/authx 推荐一套为 Java 开发人员提供方便易用的 SDK 来与目前提供服务的的 Open AI 进行交互组件&#xff1a;https://github.com/devlive-commun…

【next】Extra attributes from the server: mpa-version,mpa-extension-id

layout下面的标签添加 suppressHydrationWarning{true}

头歌-机器学习 第12次实验 Adaboost算法

第1关&#xff1a;什么是集成学习 任务描述 本关任务&#xff1a;根据本节课所学知识完成本关所设置的选择题。 相关知识 为了完成本关任务&#xff0c;你需要掌握&#xff1a;1.什么是集成学习。 什么是集成学习 集成学习方法是一种常用的机器学习方法&#xff0c;分为b…

vue3新手笔记

setup&#xff08;&#xff09;{}函数&#xff0c;是启动页面后&#xff0c;自动执行的一个函数。所有数据&#xff08;常量、变量&#xff09;、函数等等&#xff0c;都要return 出去。 ref函数(可用于基本数据类型&#xff0c;也可以用于复杂数据类型)&#xff1a;让页面上的…

【QT入门】 Qt自定义控件与样式设计之QSlider用法及qss

往期回顾&#xff1a; 【QT入门】 Qt自定义控件与样式设计之QCheckBox qss实现按钮开关-CSDN博客 【QT入门】 Qt自定义控件与样式设计之QPushButton点击按钮弹出菜单-CSDN博客 【QT入门】Qt自定义控件与样式设计之QProgressBar用法及qss-CSDN博客 【QT入门】 Qt自定义控件与样式…

MPT - 原理及应用

前文回顾 Merkle原理及应用Merkle代码实现Patricia原理及应用Patricia代码实现 什么是MPT&#xff08;Merkle Patricia Tree&#xff09;树 MPT树是一种数据结构&#xff0c;用于在以太坊区块链中高效地存储和检索账户状态、交易历史和其他重要数据。MPT树的设计旨在结合Merk…

激光点云-无监督语义分割方法

深度学习和人工智能是点云分割的良好且强大的解决方案,但语义分割对于数据处理方式能否更加简单和快速?如今,我们仍然关注深度学习,但人工智能是以数据为中心的。生成这些数据是一个劳动密集型的解决方案,我们是否可以尝试采用简单的无监督语义分割来有效地“预标记”点云…

【noVNC】使用noVNC实现浏览器远程VNC(基于web的远程桌面)

一、操作的环境 windows 10系统乌班图 Ubuntu 22 二、noVNC 部署方式 原理&#xff1a;开启 Websockify 代理来做 WebSocket 和 TCP Socket 之间的转换 2.1 noVNC和VNC服务端同一台机器 使用方式&#xff0c;查看另一篇博文 &#xff1a;【noVNC】使用noVNC实现浏览器网页访…

基于8086方波信号发生器仿真设计

**单片机设计介绍&#xff0c;基于8086方波信号发生器仿真设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 二、功能设计 文件夹内包含工程文件&#xff0c;可直接运行或者二次开发&#xff1b; 此设计可作为毕业设计和课程…

从“看见”工程活动和研发模式开始,提升团队工程交付能力

提升团队工程交付能力&#xff0c;从“看见”工程活动和研发模式开始 理想中的研发团队应当具有以下特征&#xff1a; 总是工作在最高优先级的事项上理想的研发团队能够识别并始终集中精力在当前最紧迫和最有价值的任务上。这需要团队具备出色的项目管理能力和决策能力&#x…

andorid 矢量图fillColor设置无效

问题&#xff1a;andorid 矢量图fillColor设置无效 解决&#xff1a;去掉如下 android:tint一行

考研数学|全程跟汤家凤,还是强化换张宇?

考研高数的复习策略因人而异&#xff0c;选择跟哪位老师的课程取决于个人的学习习惯、基础水平和目标院校的要求。 汤家凤老师的教学特点是注重基础知识的讲解和概念的理解&#xff0c;适合基础薄弱或者零基础的考生。他的课程通常从基础概念讲起&#xff0c;逐步深入&#xf…

手动实现简易版RPC(上)

手动实现简易版RPC(上) 前言 什么是RPC&#xff1f;它的原理是什么&#xff1f;它有什么特点&#xff1f;如果让你实现一个RPC框架&#xff0c;你会如何是实现&#xff1f;带着这些问题&#xff0c;开始今天的学习。 本文主要介绍RPC概述以及一些关于RPC的知识&#xff0c;为…

前端代码规范系列,今天聊聊代码注释

开始之前&#xff0c;介绍一下​最近很火的开源技术&#xff0c;低代码。 作为一种软件开发技术逐渐进入了人们的视角里&#xff0c;它利用自身独特的优势占领市场一角——让使用者可以通过可视化的方式&#xff0c;以更少的编码&#xff0c;更快速地构建和交付应用软件&#…

一文带你了解Material, Texture Mapping, Shading, Shader

作者&#xff1a;caven chen 在计算机图形学和三维开发过程中&#xff0c;有几个容易混淆的概念。今天我们来一举拿下。 又可以学习新的知识啦。冲鸭。。。。。。 基础概念 首先我们来介绍一些基础概念: 英文 中文 本质 释义 Material 材质 数据集 表现物体对光的交互…

勒索软件漏洞?在不支付赎金的情况下解密文件

概述 在上一篇文章中&#xff0c;笔者对BianLian勒索软件进行了研究剖析&#xff0c;并且尝试模拟构建了一款针对BianLian勒索软件的解密工具&#xff0c;研究分析过程中&#xff0c;笔者感觉构建勒索软件的解密工具还挺有成就感&#xff0c;因此&#xff0c;笔者准备再找一款…