にリンクリストの末尾にノードを挿入するには、私はlinkedlist
の終わりにノードを挿入するには、このコードを書いたが、私は、リストを印刷していたとき、私は唯一の第一の要素を取得しています:エラーは、java
public class LinkedList {
public class Link{
private int data;
private Link next;
public Link(int data,Link next){
this.data = data;
this.next = next;
}
public void printLink(){
System.out.print(data);
}
}
private Link head;
public LinkedList(){
head = null;
}
public void insertNode_end(int data1){
Link node = new Link(data1,null);
if(head == null){
node.next = head;
head = node;
}
else{
Link ptr = head;
while(ptr != null){
ptr = ptr.next;
}
node.next = null;
ptr = node;
}
}
public void printList(){
Link curr_node = head;
while(curr_node != null){
curr_node.printLink();
curr_node = curr_node.next;
}
}
public static void main(String args[]){
LinkedList obj = new LinkedList();
obj.insertNode_end(1);
obj.insertNode_end(2);
obj.insertNode_end(3);
obj.insertNode_end(4);
obj.insertNode_end(5);
obj.printList();
}
}
私は1
しか印刷されません。私もptr.next = node
をしようとしましたが、それはnull pointer exception
を投げます。
私はここで間違いをしていますか?
コードのデバッグに役立つように、IDEのデバッガでコードをステップ実行することをお勧めします。 –