Вот метод до сих порУдаление узла из двойного списка?
public DNode removeDnode(DNode v, DNode e, DNode f)
{
e = v.nextNode();
f = v.prevNode();
f.setNext() = e;
e.setPrev() = f;
v.setPrev(null);
v.setNext(null);
size = size - 1;
return v;
}
Вот мой класс узел
public class DNode
{
public String element;
public DNode next;
public DNode previous;
public DNode(String e, DNode n)
{
element = e;
next = n;
}
public void setElement(String newElem)
{
element = newElem;
}
public void setNext(DNode newNext)
{
next = newNext;
}
public void setPrev(DNode newPrev)
{
previous = newPrev;
}
public String getElement()
{
return element;
}
public DNode nextNode()
{
return next;
}
public DNode prevNode()
{
return previous;
}
}
Я получаю ошибку «метод setNext в классе DNode не могут быть применены к данным типам, но я не знаю, Зачем. Любая помощь?
(Не читайте это, это использовать символы, так что позволит мне сообщение)
EDIT: новый метод ниже
public DNode removeDnode(DNode current)
{
DNode next = current.nextNode();
DNode previous = current.prevNode();
previous.setNext(next);
next.setPrev(previous);
current.setPrev(null);
current.setNext(null);
size = size - 1;
return current;
}
, но как я могу иметь дело с концом и началом список
'V'? 'É'? 'f'? ... – NPE
' f.setNext() = e; 'не является законным Java –
@aix что? это, наверное, неправильно, но я просто пытаюсь заставить его работать. Да, он работает только в середине связанного списка и требует ввода всех трех узлов, чего я не хотел. – Elliot678