publicinterfaceLList{//线性表接口booleanisEmpty();//判断线性表是否为intlength();//返回线性表长度Tget(inti);//返回第i个元素Tsearch(Tkey);//查找返回首次出现关键字为key的...
public interface LList { //线性表接口
boolean isEmpty(); //判断线性表是否为
int length(); //返回线性表长度
T get(int i); //返回第i个元素
T search(T key); //查找返回首次出现关键字为key的元素
}
public class SeqList implements LList
{
private Object[] element;
private int len;
public SeqList(int size)
{
this.element=new Object[size];
this.len=0;
}
public SeqList()
{
this(64);
}
public SeqList(T[] arr)
{
if(this.len==arr.length)
{
Object[] temp=this.element;
this.element=new Object[temp.length*2];
for(int j=0;j
this.element[j]=temp[j];
}
for(int k=0;k
this.element[k]=arr[k];
this.len=arr.length;
}
public boolean isEmpty()
{
return this.len==0;
}
public int length()
{
return this.len;
}
public T get(int i)
{
if (i>0&&i
return (T)this.element[i];
return null;
}
public int indexOf(T key)
{
if(key!=null)
for (int i=0;i
if (this.element[i].equals(key))
return i;
return -1;
}
public T search(T key) //返回首次的关键字为key的元素
{
int find =this.indexOf(key);
return find==-1?null:(T)this.element[find];
}
public boolean contain(T key)
{
return this.indexOf(key)>=0;
}
}
public class Test {
public static void main (String[] args){
Integer[] s={12,2,34,45,12,3,21,12,2,6,7};
SeqList list=new SeqList (s);
}
}
报错代码段:
public SeqList(T[] arr)
{
if(this.len==arr.length)
{
Object[] temp=this.element;
this.element=new Object[temp.length*2];
for(int j=0;j
this.element[j]=temp[j];
}
for(int k=0;k
this.element[k]=arr[k];
this.len=arr.length;
}
里面的
his.element[k]=arr[k];
和
SeqList list=new SeqList (s);
展开