У меня проблема с обработкой конкретного метода с помощью настраиваемого объекта:
Я создал класс «NodeQueue», который содержит список узлов (SList <"Node">), его длину и первый элемент списка
private final SList<Node> q;
private final int length;
private final Node first;
public NodeQueue() //Empty queue
{
q = new SList<Node>();
length = 0;
first = null;
}
public NodeQueue(SList<Node> q1) //Full queue
{
q = q1;
length = q.length(); //length() is the method that returns the length of SList<T>
first = q.car(); //car() is the method that returns the first element of SList<T>
}
public Node poll()
{
...
return first;
}
Где ожидаемая функция poll () следующая:
NodeQueue n = new NodeQueue(); //Let's pretend n is not empty
Node a = n.poll(); //Where "a" is the first element of the list
Проблема в том, что в «poll ()» мне нужно вернуть первую элемент (в данном случае в Node a) и стереть его из фактического экземпляра «NodeQueue n».
Как мне обновить Nodequeue и вернуть первый элемент в одной функции?
Мне в основном нужно установить «Node a» на первый элемент NodeQueue и установить «NodeQueue n» на себя за вычетом первого элемента.