public class DoubleList { private int size; private Node header; private Node trailer; public DoubleList() { size = 0; header = new Node(null); trailer = new Node(null); header.setNext(trailer); trailer.setPrev(header); } public void insertAtHead(Object data) { Node n = new Node(data); n.setNext(header.getNext()); n.setPrev(header); header.setNext(n); n.getNext().setPrev(n); size++; } public void deleteHead() { if(size == 0) { return; } header.setNext(header.getNext().getNext()); header.getNext().setPrev(header); } public void print() { Node tmp = header.getNext(); while(tmp.getNext() != null) { tmp.print(); tmp = tmp.getNext(); } } }