removeLast()方法为什么会出现空指针
来源:4-5 从链表中删除元素
qq_往事_8
2019-01-13
为什么我的removeLast方法会出现空指针
remove()方法
//在链表中删除元素
public E remove(int index) {
if(index<0||index>=size) {
throw new IllegalArgumentException("下标不在范围之内");
}
Node prev = dummyHead;
for(int i=0;i<index;i++) {
prev = prev.next;
}
Node retNode = prev.next;
prev.next = retNode.next;
retNode.next = null;
size--;
return retNode.e;
}
removeLast()方法
//从链表中删除最后一个元素,返回删除的元素
public E removeLast() {
return remove(size-1);
}
写回答
1回答
-
qq_往事_8
提问者
2019-01-13
老师 问题我通过查看你github里的代码解决了,是因为我的addFirst方法里多了一句size++,想问一下为什么addFirst里不需要size++,加上了这句话为什么会导致removeLast方法空指针。
032019-01-14
相似问题