private Object[] elements;
private int size;
public shunxubiao(int capacity) {
elements=new Object [capacity];
size=0;
}
public shunxubiao(){
this(0);
}
public int size(){
return size;
}
public void checkIndexforadd(int index){
if(index<0||index>size){
throw new IllegalArguementException("error!index>=0 and index<=size");
}
//添加
public void add(int index,Object x) {
checkIndexforadd(index);
/*扩容*/
if(size==elements.length){
Object[] temp =new Object[2*size]
for(int i=0;i<size;i++){
temp[i]=elements[i];
}
elements=temp;
}
for(int i=size-1;i>=index;i--){
elements[i+1]=elements[i];
}
elements[index]=x;
size++;
}
//添加首位
public void addfirst(Object x){
add(0,x);
}
//添加最后一个
public void addlast(Object x){
add(size,x);
}
public static void main(String[] args) {
ArrayList<Integer> list2=new ArrayList<Integer>();
shunxubiao list1=new shunxubiao(100);
for(int i=0;i<10;i++) {
int x=(int)Math.round(Math.random()*100);
list1.add(i, x);
list2.add(i,x);
}
System.out.println(list2);
System.out.println(list1);
list1.add(1, 2);
System.out.println(list1)
list1.addfirst(0,4);
System.out.println(list1);
list1.addlast(9,5);
System.out.println(list1);
}