ArrayList底层结构和源码分析

/ 2023-05-07 / 原文

ArrayList底层结构和源码分析

  • ArrayList的底层操作机制源码分析
  1. ArrayList中维护了一个Object类型的数组elementData
transient Obiect[] elementData;
//transient是瞬间短暂的,表示被它修饰的属性不被序列化
  1. 当创建ArrayList对象是,如果使用的是无参构造器,那么初始elementData容量大小为0,第一次添加,则扩容为10,如需再次扩容,则扩容为elementData的1.5倍

  2. 当创建ArrayList对象是,如果使用的是有参构造器,那么初始elementData容量大小为指定大小,如需再次扩容,则扩容为elementData的1.5倍