Java基础面试-ArrayList和LinkedList的区别

news/2024/7/24 0:50:58 标签: java, 面试, 开发语言

ArrayList:

基于动态数组,连续内存存储,适合下标访问(随机访问),扩容机制: 因为数组长度固定,超出长度存数据时需要新建数组,然后将老数组的数据拷贝到新数组,如果不是尾部插入数据还会涉及到元素的移动(往后复制一份,插入新元素),使用尾插法并指定初始容量可以极大提升性能、甚至超过linkedList (需要创建大量的node对象)

LinkedList:

基于链表,可以存储在分散的内存中,适合做数据插入及删除操作,不适合查询: 需要逐一遍历

遍历LinkedList必须使用iterator不能使用for循环,因为每次for循环体内通过get()取得某一元素时都需要对list重新进行遍历,性能消耗极大。
另外不要试图使用index0f等返回元素索引,并利用其进行遍历,使用indexl0f对list进行了遍历,当结果为空时会遍历整个列表。


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

相关文章

五分钟带你了解QA和测试工程师的本质区别

QA 和测试工程师的区别是什么呢? 这个问题相信对于很多即使从业了多年的测试工程师来说也是一头雾水,大多数人会认为二者是一样滴,将其混为一谈!其实二者是有很大区别的,今天我就用五分钟时间带大家来了解一下二者的本…

Avalonia为DataGrid添加行点击事件

1.前置参考&#xff1a; Avalonia常用小控件DataGrid 2.DataGrid.axaml.cs 1.为DataGridRow添加点击事件 PointerPressedEvent.AddClassHandler<DataGridRow>((x, e) > DataGridRowPointerPressed(x, e), handledEventsToo: true); 2.你要实现的点击事件 private …

力扣第235题 二又搜索树的最近公共祖先 c++

题目 235. 二叉搜索树的最近公共祖先 中等 &#xff08;简单&#xff09; 相关标签 树 深度优先搜索 二叉搜索树 二叉树 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个结点 p、q&…

WuThreat身份安全云-TVD每日漏洞情报-2023-10-11

漏洞名称:Microsoft 消息队列远程代码执行漏洞 漏洞级别:严重 漏洞编号:CVE-2023-35349 相关涉及:Microsoft Windows 漏洞状态:未定义 参考链接:https://tvd.wuthreat.com/#/listDetail?TVD_IDTVD-2023-25370 漏洞名称:Microsoft写字板 信息泄露漏洞 漏洞级别:中危 漏洞编号:…

【C++】从认识using namespace std开始进入C++的学习

&#x1f440;樊梓慕&#xff1a;个人主页 &#x1f3a5;个人专栏&#xff1a;《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C》 &#x1f31d;每一个不曾起舞的日子&#xff0c;都是对生命的辜负 &#x1f4e3;&#x1f4e3;&#x1f4e3;今天博主…

苹果手机备份软件哪个好用?有哪些免费的第三方备份软件

备份手机数据一直是一个让人头疼的问题&#xff0c;尤其对于iPhone用户来说。尽管iCloud和iTunes提供了方便的备份选项&#xff0c;但是有时候&#xff0c;我们可能需要更多高级功能或者更直观的操作界面。本文将介绍几款好用的苹果手机备份软件。 一、主流苹果备份软件 1.iClo…

uniapp app端使用谷歌地图选点定位

国内需要vpn 和申请谷歌地图的Maps JavaScript API 类型的 key,指引链接这里不详细介绍 一 、我们得通过webview 跳转谷歌地图 ,需要创建一个webview页面,里面跳转承载谷歌地图的html页面,如果是放在本地的话 html文件须遵守规范 放在 “项目根目录下->hybrid->html->…

Java Excel转PDF,支持xlsx和xls两种格式, itextpdf【即取即用】

Java Excel转PDF itextpdf&#xff0c;即取即用 工具方法一、使用方式1、本地转换2、网络下载 二、pom依赖引入三、工具方法三、引文 本篇主要为工具方法整理&#xff0c;参考学习其他博主文章做了整理&#xff0c;方便使用。 工具方法 一、使用方式 1、本地转换 导入依赖创…