ArrayList 使用、扩容与底层数组 | JavaSE

本章覆盖:ArrayList 的动态数组模型;随机访问特性;尾部添加与中间插入/删除;容量与 size 的区别;扩容的概念与成本;ensureCapacity / trimToSize 的基本认识;时间复杂度的工程级理解;ArrayList 常见适用场景;JDK 21 默认构造的延迟分配与首次扩容行为;JDK 21 中扩容优先增长约 50% 的实现级理解;ArrayList 源码结论属于 JDK 实现细节,不等同于 List 接口契约。

本章知识点

  • ArrayList 的动态数组模型
  • 随机访问特性
  • 尾部添加与中间插入/删除
  • 容量与 size 的区别
  • 扩容的概念与成本
  • ensureCapacity / trimToSize 的基本认识
  • 时间复杂度的工程级理解
  • ArrayList 常见适用场景
  • JDK 21 默认构造的延迟分配与首次扩容行为
  • JDK 21 中扩容优先增长约 50% 的实现级理解
  • ArrayList 源码结论属于 JDK 实现细节,不等同于 List 接口契约