ArrayList
ArrayList是基于object数组的,在初始化ArrayList时,会构建空数组(Object[] elementData={})。ArrayList是一个无序的,它是按照添加的先后顺序排列,当然,他也提供了sort方法,如果需要对ArrayList进行排序,只需要调用这个方法,提供Comparator比较器即可
private static final int DEFAULT_CAPACITY = 10;
如果是第一次添加元素,数组的长度被扩容到默认的capacity,也就是10.
关于扩容分两种:
①原来数组的长度为10,新加的元素长度 < 10/2 ,那么扩容后长度为(10+10/2) =15
②原来数组的长度为10,新加的元素长度 > 10/2 ,那么扩容后长度为(10+新加元素长度)