1

リンクされたリストであるプログラムを作成して、何かを順番に挿入しようとしていますが、これをコードで使用しましたが、NullPointerException であると言い続けており、理由がわかりません。

 public SortedLinkedList<T> add(T element) {
 Node insert = new Node(element);

次に、curr が null でないことを確認します。

if (comparator.compare(curr.data, insert.data) <= 0 
    && comparator.compare(curr.next.data, insert.data) > 0){
4

2 に答える 2

1

次に、currがnullでないことを確認します。

あなたが投稿したコードcurrは、nullかどうかをチェックしておらず、比較を行っており、おそらく存在しないオブジェクトに対して比較を行おうとしています。

アクセスする前に、リンクリスト内の次の要素()が存在することを確認する必要がありcurr.nextます。

于 2013-03-14T22:00:37.150 に答える
1

の本体が何かわかりcomparator.compareませんが、そのメソッドに null チェックがない場合は、次のようにする必要があります。

if (curr != null && curr.data!=null && comparator.compare(curr.data, insert.data) <= 0 
&& comparator.compare(curr.next.data, insert.data) > 0){
于 2013-03-14T23:04:52.650 に答える