当前位置: 代码迷 >> J2ME >> java 静态数组,如何动态的增加大小
  详细解决方案

java 静态数组,如何动态的增加大小

热度:9574   发布时间:2013-02-25 21:38:19.0
java 静态数组,怎么动态的增加大小
java 静态数组,怎么动态的增加大小
  就是每次都判断这个数组是否满了,如果满了,就重新新建个数组,然后再把原来的数组,复制过去

------解决方案--------------------------------------------------------
自动增长数组
Java code
public class ArrayExp{    private Object[] data ;    private int index=0;    public ArrayExp(int size){ //创建链表大小        data=new Object[10];    }    private void expand(){ //扩充        Object[] data2=new Object[data.length*2];        System.arraycopy(data,0,data2,0,data.length);        data=data2;    }    public void add(Object o){ //添加        if (data.length==index) expand();        data[index]=o;        index++;    }    public void add(int pos,Object o){ //在指定位置添加        if (data.length==index) expand();        for(int i=index;i>pos;i--){            data[i]=data[i-1];        }        data[pos]=o;        index++;    }        public void change(int pos,Object o){ //替换        data[pos]=o;    }        public Object remove(int pos){  //删除        Object o=data[pos];        index--;        for(int i=pos;i<index;i++){            data[i]=data[i+1];        }        return o;    }    public int size(){  //返回大小        return index;    }    public Object get(int pos){ //返回指定位置值        return data[pos];    }    public void clear(){   //清除         index=0;    }    public boolean isEmpty(){ //置空        return index==0;    }    public Object[] toArray(){ //返回数组         return data;     }}
  相关解决方案