import java.util.Iterator; import java.lang.UnsupportedOperationException; import java.util.NoSuchElementException; public class SledDogIterator implements Iterator { private LinearNode leadNode; public SledDogIterator () { leadNode = null; } public SledDogIterator (LinearNode lNode) { leadNode = lNode; } public boolean hasNext () { return (leadNode == null ? false : true); } public T next () { if (leadNode != null) { T ret = leadNode.getElement(); leadNode = leadNode.getNext(); return ret; } else { throw new NoSuchElementException ("No such element present in the Iterator"); } } public void remove () { throw new UnsupportedOperationException("Remove operation is not supported"); } }