package list_pkg;
import java.util.Arrays;
/**
* ArrayList add()将任意元素添加到ArrayList的末尾
* @author Administrator
*
*/
public class ArrayListAddFun {
int[] elementData ={1,2,3,4,5,6};
int size = elementData.length;
public Boolean add(int e){
ensureCapacity(size + 1);//扩容,确保内部数组有足够的空间
elementData[size++] = e;//将元素添加到数组的末尾,完成添加
return true;
}
public void ensureCapacity(int minCapacity){//minCapacity最小需要的容量
int oldCapacity = elementData.length;
if(minCapacity > oldCapacity){//如果原容量小于最小需要的容量,则进行扩容;
int newCapacity = (oldCapacity * 3)/2;//扩容到原来的1.5倍
if(minCapacity > newCapacity){//如果扩容后小于最小需要的容量,就用最小需要的容量
newCapacity = minCapacity;
}
elementData = Arrays.copyOf(elementData, newCapacity);//进行扩容的数组复制
}
}
public static void main(String[] args) {
ArrayListAddFun arr = new ArrayListAddFun();
arr.add(8);
}
}