package firstHomework.fan; public class myArrayList implements List { private int size = 0; private int initLength=10; private Object[] elementData = new Object[initLength]; public void add(Object o){ ensureCapacity(size+1); elementData[size++] = o; } public void add(int index, Object o){ ensureCapacity(size+1); if(index<0||index>size){ System.out.println("indexӦ����0-size֮�䣡����"); }else{ System.arraycopy(elementData, index, elementData, index+1, size-index); elementData[index] = o; size++; } } public Object get(int index){ if(index<0||index>size){ System.out.println("indexӦ����0-size֮�䣡����"); }else{ return elementData[index]; } return null; } public Object remove(int index){ if(index<0||index>size){ System.out.println("indexӦ����0-size֮�䣡����"); return null; } Object obj = get(index); System.arraycopy(elementData, index+1, elementData, index, size-index-1); size--; return obj; } public int size(){ return this.size; } public void ensureCapacity(int x){ int oldCapacity = elementData.length; if(x>oldCapacity){ Object newEle[] = new Object[oldCapacity+initLength]; System.arraycopy(elementData, 0, newEle, 0, size); elementData = newEle; } } }