リストのノードを削除するコードを書いていますが、私が把握できない問題が発生しています。リンクリスト内のノードを削除することに関して
この私のdelete_node
機能:
public void delete_node(int data){
node ptr=head;
//if 1st node is to be Deleted
if(ptr != null && ptr.data==data){
head=ptr.link;
ptr.link=null;
}
//line 90 below:
while(ptr.link.data!=data){
ptr=ptr.link;
}
ptr.link=ptr.link.link;
}
これはmain
機能です:
public static void main(String[] args) {
list o=new list();
o.insert_beginning(1);
o.insert_beginning(2);
o.delete_node(2);//line 8
o.display();
これはエラーです:
Exception in thread "main" java.lang.NullPointerException
at list.delete_node(list.java:90)
at Main.main(Main.java:8)
あなたは 'ptr.link'を' null'に設定してから、エラーの原因となる行90のデータにアクセスしようとします。私はあなたがこのコードで達成しようとしているものは何も考えていません –