だから私はJavaで二重リンクリストを持っていて、それをテストしていますが、同じインデックスで2つの要素を削除しようとすると、nullポインタ例外がスローされました
これは私のリスト [A、B、C、D、E] で、これは私のテストです
System.out.println("Item removed at index 3: " + list.removeAtIndex(3));
System.out.println(list);
//throws exception at following line
System.out.println("Item removed at index 3: " + list.removeAtIndex(3));
System.out.println(list);
リストは [ A、B、C] である必要がありますが、例外がスローされます。これは removeAtIndex メソッドの実装です。
public E removeAtIndex(int index) {
DoublyLinkedNode<E> node = firstNode;
for(int i = 0; i < index; i++)
{
node = node.getNext();
}
E item = node.getItem();
node.getPrevious().setNext(node.getNext());
node.getNext().setPrevious(node.getPrevious());
return item;
}
どうすればこれを解決できますか?
編集:言い忘れましたが、あるインデックスで削除してからもう一度削除すると、別のインデックスで問題なく動作します