我不知道这个列表有什么问题,但是当我尝试测试它时,我的IDE崩溃了。我不知道它是我的toString方法还是我的Add方法,所以这里是我的代码。当我测试方法时,我的IDE不会打印或返回任何内容并退出工作,我必须重新启动。
public void add(int index, String string){
Node newest=new Node(string,null);
Node temp;
temp=head;
newest.setNext(temp);
for (int i=0;i<index-1;i++){
newest.setNext(newest.getNext());}
for (int i=0;i<=index-1;i++){
temp.setNext(temp.getNext());
if (i==index-1){
temp.setNext(newest);
}
}}
public String toString(){
Node Current= head;
String result=" ";
while(Current!=null){
result+=Current.getElement()+", ";
Current=Current.getNext();
}
return result;
}
答案 0 :(得分:1)
你的add方法似乎在链表中设置了一个循环,相关的代码行是;
newest.setNext(temp);
...
temp.setNext(newest);
你的toString()
只是循环,直到它找到列表的结尾,但由于列表一旦添加了循环就无限循环,它将永远不会终止。
作为旁注,你也有一些奇怪的线条;
newest.setNext(newest.getNext());
...
temp.setNext(temp.getNext());
...据我所见,我绝对没有做任何事情(即他们获得下一个节点并将其设置为下一个节点)。