スタックとリンクされたリストを使用してタワー ゲームを解決し、再帰を使用してブロックをタワーからタワーに移動することに取り組んでいます。
java.lang.NullPointerException を引き起こす問題が発生しました。これが起こった理由は、エントリがない場合でもスタックから値をポップしようとしたためだと思います。バインドされたコントロールを配置した後も、そのエラーが発生します。
エラーは deleteFirst() メソッドのある行を指していますが、リストが空かどうかを確認した後でも、なぜこれが発生するのかわかりません。
ここでの私のタスクは、タワーまたは LinkedStack オブジェクトを渡し、それらのコンテンツをタワー ゲームのように移動することだけでした。
エラー:
Exception in thread "main" java.lang.NullPointerException
at LinkList.deleteFirst(towers.java:47) // code with: **first = first.next;**
at LinkedStack.pop(towers.java:82) // code with: return theList.deleteFirst();
at LinkListApp.doTowers(towers.java:146) // code with: A.pop();
at LinkListApp.doTowers(towers.java:140) // doTowers(a-1, A, C, B);
at LinkListApp.main(towers.java:121) // doTowers(nDisks, linkA, linkB, linkC);
ここで何が間違っていますか?私はこれを機能させることはできません。あるべきように。