以下是我的尝试: -
public void removeTail(){
Node precurrent=null;
Node transverse=head;
if(size != 0) {
while(transverse.getNext() !=null) {
System.out.println("oh"+transverse.getElement());
precurrent=transverse;
transverse=transverse.getNext();
}
precurrent.setNext(null);
size--;
}
else{
System.out.println("List is all ready empty");
}
}
上面代码的问题是,当只剩下一个节点时,它会出错,我尝试将其删除。这是因为我定义的预处理方式。请建议应该采取什么措施来处理这种情况。我不想添加size == 1的情况。
答案 0 :(得分:0)
有两种可能的方式。
检查你的尺码是否等于1。
或者这将是我的解决方案,使用precurrent
初始化head
就像使用transverse