ArrayList是我们经常用到的一个类,下面总结一下它内部的实现细节和使用时要注意的地方. 基本概念 ArrayList在数据结构的层面上讲,是一个用数组实现的list,从应用层面上讲,就是一个容量会自己改变的数组,具有一系列方便的add.set.get.remove等方法,线程不安全.先上张类图吧. ArrayList的容量 ArrayList有两个数据域与之相关. transient Object[] elementData; // non-private to simplify nest…