一个简单的线性表

public class List { int maxSize; //线性表的最大长度 int size; //当前长度 Object[] listArr; //线性表元素数组 /* * 构造方法,初始化线性表 */ public List(int listSize){ maxSize=listSize; size=0; listArr=new Object[listSize]; } /* *获得线性表的长度 */ public int length(){ return size; } /* * 判断为空 */ public boolean isEmpty(){ if(size==0) return true; return false; } /* * 在线性表中插入数据 */ public void insert(int i,Object obj){ if(maxSize==size){ System.out.println("线性表已满,不能插入数据"); } else if(i<0||i>maxSize){ System.out.println("参数错误,不能插入"); } else{ for(int j=length();j>i;j--){ listArr[j]=listArr[j-1]; } listArr[i]=obj; size++; } } /* * 删除制定位置的数据 */ public void delete(int i){ if(size==0){ System.out.println("线性表为空"); }else if(size<0||size>maxSize){ System.out.println("参数错误"); }else{ for(int j=i-1;j<length()-2;j++){ listArr[j]=listArr[j+1]; } listArr[length()-1]=""; size--; } } /* * 获取制定位置的数据 */ public Object getData(int i){ if(size==0){ System.out.println("线性表为空"); return null; }else if(size<0||size>maxSize){ System.out.println("参数错误"); return null; }else return listArr[i]; } public static void main(String[] arg){ List list = new List(5); for(int i=0;i<5;i++){ list.insert(i, "obj"+i); } for(int i=0; i<5;i++){ System.out.println(list.getData(i)); } System.out.println(list.length()); System.out.println(list.maxSize); if(!list.isEmpty()){ System.out.println("空"); } } }

爆款云服务器s6 2核4G 低至0.46/天,具体规则查看活动详情Blog Img