## com.google.common.collect
Class ForwardingIterator<T>

    java.lang.Object
      com.google.common.collect.ForwardingObject
          com.google.common.collect.ForwardingIterator<T>

All Implemented Interfaces:
  Iterator<T>

Direct Known Subclasses:
  ForwardingListIterator

    @GwtCompatible
    public abstract class ForwardingIterator<T>

extends ForwardingObject
implements Iterator<T>

An iterator which forwards all its method calls to another iterator. Subclasses should override one or more methods to modify the behavior of the backing iterator as desired per the decorator pattern.

Since:
  2.0 (imported from Google Collections Library)
Author:
  Kevin Bourrillion

Constructor Summary
`protected` `ForwardingIterator()` Constructor for use by subclasses.

Method Summary
`protected abstract Iterator<T>` `delegate()` Returns the backing delegate instance that methods are forwarded to.
`boolean` `hasNext()`
`T` `next()`
`void` `remove()`

Methods inherited from class com.google.common.collect.ForwardingObject
`toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### ForwardingIterator

    protected ForwardingIterator()

  Constructor for use by subclasses.

Method Detail

### delegate

    protected abstract Iterator<T> delegate()

  Description copied from class: `ForwardingObject`
  Returns the backing delegate instance that methods are forwarded to. Abstract subclasses generally override this method with an abstract method that has a more specific return type, such as `ForwardingSet.delegate()`. Concrete subclasses override this method to supply the instance being decorated.

  Specified by:
    `delegate` in class `ForwardingObject`

### hasNext

    public boolean hasNext()

  Specified by:
    `hasNext` in interface `Iterator<T>`

### next

    public T next()

  Specified by:
    `next` in interface `Iterator<T>`

### remove

    public void remove()

  Specified by:
    `remove` in interface `Iterator<T>`

Copyright © 2010-2012. All Rights Reserved.