import java.util.Collection; import java.util.Iterator; import java.util.Queue; public class ChainQueue implements Queue { private class Node { E data; Node next; public Node(E data) { this.data = data; } } Node first; @Override public boolean add(E arg0) { if (first == null) { first = new Node(arg0); } return addNode(arg0, first); } private boolean addNode(E arg, Node n) { if (n == null) { n = new Node(arg); } if (n.next == null) { n.next = new Node(arg); } return true; } @Override public int size() { return 0; } @Override public boolean isEmpty() { return false; } @Override public boolean contains(Object o) { return false; } @Override public Iterator iterator() { return null; } @Override public Object[] toArray() { return new Object[0]; } @Override public T[] toArray(T[] ts) { return null; } @Override public boolean remove(Object o) { return false; } @Override public boolean containsAll(Collection collection) { return false; } @Override public boolean addAll(Collection collection) { return false; } @Override public boolean removeAll(Collection collection) { return false; } @Override public boolean retainAll(Collection collection) { return false; } @Override public void clear() { } @Override public boolean offer(E e) { return false; } @Override public E remove() { return null; } @Override public E poll() { return null; } @Override public E element() { return null; } @Override public E peek() { return null; } }