Java Collection类的某些详细实现因为底层数据存储基于数组,随着元素数量的添加,调整大小的代价非常大.随着Collection元素增长到某个上限,调整其大小可能出现性能问题. 当Collection元素达到内部数组达到最大值后,须要创建新数组,而且将旧数组元素通过Arrays.copyOf方法复制到新数组,这就消耗了CPU时间片,而且还须要进行垃圾回收,特别是当Collection对象生命周期较长,已经处于老年代,须要经历一次Full GC才干释放内存.新数组的内存会在年轻代的Ede