Crespo:
Tengo mi Node
clase:
public class Node <T> {
private Node<T> next;
private T element;
public void setElement(T element) {
this.element = element;
}
public T getElement() {
return element;
}
public Node<T> getNext() {
return next;
}
public void setNext(Node <T> next) {
this.next= next;
}
}
Y también tengo mi List
clase:
public class List <T> {
Node<T> first;
Node<T> last;
... sobre la que puedo hacer varias cosas como la adición de elementos a la lista o sustituirlos, borrar algunos elementos, ver el tamaño de mi lista, etc. Un ejemplo de estos métodos sería addFirst()
.
public T addFirst(T element) {
Node<T> aux;
if (isEmpty()) {
aux = new Node<>();
first= aux;
lsat= aux;
aux.setElement(element);
} else {
aux = new Node<>();
aux.setElement(element);
aux.setNext(first);
first= aux;
}
return first.getElement();
}
Sólo me falta un método convertir una matriz a una lista obviamente con las restricciones mencionadas anteriores.
ADXL:
Una solución consiste en recorrer la matriz y simplemente a llenar List
:
// your array of Nodes
Node<?>[] nodeArray = new Node[]{node1,node2,node3,node4,node5};
// your List
List<?> myList = new List<>();
for(Node<?> node : nodeArray)
{
myList.addLast(node); // use addLast() to keep the same order as the array
}