Arraylist与LinkedList的区别

Arraylist


概念

  1. Arraylist非线程安全
  2. Arraylist 底层使用的是Object数组
  3. ArrayList 采用数组存储,插入和删除元素的时间复杂度受元素位置的影响
  4. ArrayList 支持快速随机访问,就是通过元素的序号快速获取元素对象
  5. ArrayList的空间浪费主要体现在列表的结尾会预留一定的容量空间
  6. Arraylist可变大小的,可以动态的扩容
  7. ArrayList底层是数组,查询快,增删慢

LinkedList


概念

  1. LinkedList非线程安全
  2. LinkedList 底层使用的是双向链表
  3. LinkedList 采用链表存储,插入删除元素时间复杂度不受元素位置的影响
  4. LinkedList 在添加和删除元素时比Arraylist性能更好一些
  5. LinkedList 不支持高效的随机元素访问
  6. LinkedList的占用空间更大,因为LinkedList要存放直接后继和直接前驱以及数据
  7. LinkedList底层是链表,查询慢、增删快

相关推荐
Javatutouhouduan7 天前
2025Java高质量面试真题汇总!
java·高并发·java面试·java面试题·后端开发·java架构师·java八股文
Jabes.yang13 天前
Java面试场景:从Spring Web到Kafka的音视频应用挑战
大数据·spring boot·kafka·spring security·java面试·spring webflux
Jabes.yang14 天前
互联网大厂Java面试:从缓存技术到安全框架的深度探索
消息队列·java面试·缓存技术·互联网大厂·安全框架
你总是一副不开心的样子(´ . .̫ .18 天前
一、十天速通Java面试(第三天)
java·面试·职场和发展·java面试
Javatutouhouduan18 天前
Java程序员如何深入学习JVM底层原理?
java·jvm·java面试·后端开发·java架构师·java程序员·互联网大厂
小许学java19 天前
数据结构-ArrayList与顺序表
java·数据结构·顺序表·arraylist·线性表
Light6025 天前
LinkedList 头尾插入与随机访问的隐蔽陷阱—— 领码课堂|Java 集合踩坑指南(6):
java·开发语言·性能优化·deque·双向链表·linkedlist·fail-fast
Jabes.yang1 个月前
Java面试揭秘:从Spring Boot到微服务的技术问答
spring boot·微服务·java面试·互联网大厂·技术问答
Jabes.yang1 个月前
互联网大厂Java面试:从Spring到Kafka的技术挑战
spring boot·spring cloud·eureka·kafka·mybatis·jpa·java面试
王嘉俊9251 个月前
Java面试宝典:核心基础知识精讲
java·开发语言·面试·java基础·八股文