Java-ArrayList和LinkedList区别

  1. ⾸先,他们的底层数据结构不同,ArrayList底层是基于数组实现的,LinkedList底层是基于链表实现的
  2. 由于底层数据结构不同,他们所适⽤的场景也不同,ArrayList更适合随机查找,LinkedList更适合删除和添加,查询、添加、删除的时间复杂度不同
  3. 另外ArrayList和LinkedList都实现了List接⼝,但是LinkedList还额外实现了Deque接⼝,所以LinkedList还可以当做队列来使用

注:1,2两点可以结合来看,ArrayList之所以查询更快就是因为底层实现逻辑是数组,同样的,LinkedList之所以更适合增删也是因为其底层实现是基于链表,可以通过修改指针指向来快速的完成新增和删除

相关推荐
知识分享小能手1 天前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04中的Java与Android开发环境 (20)
java·学习·ubuntu
南屿欣风1 天前
FeignClient 踩坑:@FeignClient 同时配 value 和 url 的 “无效服务名” 问题
java
豆沙沙包?1 天前
2026年--Lc329-735. 小行星碰撞(栈)--java版
java·开发语言
爆更小哇1 天前
Selenium自动化测试函数全解析(二)
java·selenium·测试工具·自动化
C雨后彩虹1 天前
计算误码率
java·数据结构·算法·华为·面试
fanruitian1 天前
Springboot项目父子工程
java·数据库·spring boot
小肖爱笑不爱笑1 天前
SpringBoot Web
java·http协议·分层解耦·web后端
柒.梧.1 天前
Spring核心知识全解析:从入门实战到进阶
java·后端·spring
乌日尼乐1 天前
【Java基础整理】Java字符串处理,String、StringBuffer、StringBuilder
java·后端
全栈独立开发者1 天前
点餐系统装上了“DeepSeek大脑”:基于 Spring AI + PgVector 的 RAG 落地指南
java·人工智能·spring