DoublyLinkedList Исключение нулевого указателя - PullRequest
0 голосов
/ 13 февраля 2020

То, что я пытаюсь сделать, - это если следующий узел / элемент в DoublyLinkedList - это период, когда я хочу переместить все, что было в предыдущем узле, но я получаю исключение Null Pointer, если я могу просто выяснить, что могу напишите остальное, я просмотрел все, и я понял, что это означает, что указатель указывает на то, чего нет, но там должно быть что-то, я помещаю что-то туда. вот код Я знаю, что там могут быть и другие ошибки, поэтому помощь по ним также очень ценится.

public void move()
{
    Link current = first;
    while(current != null)
    {
        if (current.next.dData == ".")
        {
            current.next.dData = current.dData;
            current.dData = ".";
        }
        current = current.next;
    }
}

Здесь я создаю и добавляю узлы в список.

for (int i = 0; i < 500; i++) {
        double q = Math.random();
        if (q <= .33) {
            theList.insertFirst("F");
        }
        else if (q <= .66) {
            theList.insertFirst("B");
        } else {
            theList.insertFirst(".");
        }
    }

и это моя функция insertFirst:

public void insertFirst(String dd)  // insert at front of list
{
    Link newLink = new Link(dd);   // make new link

    if( isEmpty() )                // if empty list,
        last = newLink;             // newLink <-- last
    else
        first.previous = newLink;   // newLink <-- old first
    newLink.next = first;          // newLink --> old first
    first = newLink;               // first --> newLink
}

Большое спасибо заранее!

...