public class LinkedListElement {
private E _element;
private LinkedListElement _next;
public LinkedListElement(E element)
{
_element = element;
_next = null;
}
public LinkedListElement(E element, LinkedListElement next)
{
_element = element;
_next = next;
}
public E get()
{
return _element;
}
public LinkedListElement next()
{
return _next;
}
public void setNext(LinkedListElement next)
{
_next = next;
}
public static LinkedListElement reverse(LinkedListElement e)
{
if (e == null) {
return null;
}
LinkedListElement current = e;
LinkedListElement next = e.next();
e.setNext(null);
while (next != null) {
LinkedListElement forward = next.next();
next.setNext(e);
e = next;
next = forward;
}
return e;
}
}