原代码如下,为书上的例子:
class Entry{
Object element;
Entry next;
Entry(Object element) {
this.element=element;
this.next=null;
}
Object getElement(){
return element;
}
}
public class SinglyList1{
Entry header=new Entry(null);
Entry add(Object o){
Entry newEntry=new Entry(o);
Entry e=header;
while(e.next!=null)
e=e.next;
e.next=newEntry;
return newEntry;
}
Entry remove(){
Entry e=header;
if (e.next.next==null) return null;
while (e.next.next!=null)
e=e.next;
Entry temp=e.next;
e.next=null;
return temp;
}
public static void main(String[] args){
Object ob1=new Object();
Object ob2=new Object();
Object ob3=new Object();
SinglyList1 list=new SinglyList1();
list.add("苹果");
list.add("香蕉");
list.add("柑橘");
System.out.println(list.remove().getElement());
System.out.println(list.remove().getElement());
System.out.println(list.remove().getElement());
}
}
但是在编译时出现错误,错误如下:
--------------------Configuration: <Default>--------------------
C:\thinkinjava\SinglyList1.java:37: add(Object) in SinglyList1 cannot be applied to (java.lang.String)
list.add("苹果");
^
C:\thinkinjava\SinglyList1.java:38: add(Object) in SinglyList1 cannot be applied to (java.lang.String)
list.add("香蕉");
^
C:\thinkinjava\SinglyList1.java:39: add(Object) in SinglyList1 cannot be applied to (java.lang.String)
list.add("柑橘");
^
3 errors
说是ADD这个方法不能应用到字符串中,为什么呢?难道是书上有错还是我的代码那里出现问题,对照书上的例子几遍都没有查出来,请各位大哥大姐帮小弟看一看,谢谢了!!