Я реализую стек, используя связанный список в Java. Проблема в том, что я получаю исключение nullPointerException, когда ниже нет элемента, например, StackNode.link не существует. Поэтому, если я пытаюсь назначить StackNode.link, я получаю исключение.
Используя оператор if для запуска кода, только если он существует, я просто получаю Исключение в операторе if. Как мне поступить об этом?
int pop() {
StackNode temp = top;
// update top
top = belowTop;
belowTop = top.link; // this is where I get the nullPointExcpetion
return temp.data;
}
Я ожидаю, что если top.link не существует (например, имеет значение null), то underTop будет просто нулевым. Это было бы хорошо, но, как описано, я получаю исключение.
РЕДАКТИРОВАТЬ: Это то, что я пытался с оператором if
if (top.link != null) {
belowTop = top.link;
}
else {
belowTop = null;
}