org.apache.commons.collections4.iterators

## Class EnumerationIterator<E>

- java.lang.Object
- - org.apache.commons.collections4.iterators.EnumerationIterator<E>

- All Implemented Interfaces:
    Iterator<E>

      public class EnumerationIterator<E>
      extends Object
      implements Iterator<E>

  Adapter to make `Enumeration` instances appear to be `Iterator` instances.
  Since:
    1.0
  Version:
    $Id: EnumerationIterator.java 1477802 2013-04-30 20:01:28Z tn $

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `EnumerationIterator()` Constructs a new `EnumerationIterator` that will not function until `setEnumeration(Enumeration)` is called.
    `EnumerationIterator(Enumeration<? extends E> enumeration)` Constructs a new `EnumerationIterator` that provides an iterator view of the given enumeration.
    `EnumerationIterator(Enumeration<? extends E> enumeration, Collection<? super E> collection)` Constructs a new `EnumerationIterator` that will remove elements from the specified collection.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Enumeration<? extends E>` | `getEnumeration()` Returns the underlying enumeration.
    `boolean` | `hasNext()` Returns true if the underlying enumeration has more elements.
    `E` | `next()` Returns the next object from the enumeration.
    `void` | `remove()` Removes the last retrieved element if a collection is attached.
    `void` | `setEnumeration(Enumeration<? extends E> enumeration)` Sets the underlying enumeration.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### EnumerationIterator

          public EnumerationIterator()

      Constructs a new `EnumerationIterator` that will not function until `setEnumeration(Enumeration)` is called.

    - #### EnumerationIterator

          public EnumerationIterator(Enumeration<? extends E> enumeration)

      Constructs a new `EnumerationIterator` that provides an iterator view of the given enumeration.
      Parameters:
        `enumeration` - the enumeration to use

    - #### EnumerationIterator

          public EnumerationIterator(Enumeration<? extends E> enumeration,
                             Collection<? super E> collection)

      Constructs a new `EnumerationIterator` that will remove elements from the specified collection.
      Parameters:
        `enumeration` - the enumeration to use
        `collection` - the collection to remove elements from

  - ### Method Detail

    - #### hasNext

          public boolean hasNext()

      Returns true if the underlying enumeration has more elements.
      Specified by:
        `hasNext` in interface `Iterator<E>`
      Returns:
        true if the underlying enumeration has more elements
      Throws:
        `NullPointerException` - if the underlying enumeration is null

    - #### next

          public E next()

      Returns the next object from the enumeration.
      Specified by:
        `next` in interface `Iterator<E>`
      Returns:
        the next object from the enumeration
      Throws:
        `NullPointerException` - if the enumeration is null

    - #### remove

          public void remove()

      Removes the last retrieved element if a collection is attached.

      Functions if an associated `Collection` is known. If so, the first occurrence of the last returned object from this iterator will be removed from the collection.

      Specified by:
        `remove` in interface `Iterator<E>`
      Throws:
        `IllegalStateException` - `next()` not called.
        `UnsupportedOperationException` - if no associated collection

    - #### getEnumeration

          public Enumeration<? extends E> getEnumeration()

      Returns the underlying enumeration.
      Returns:
        the underlying enumeration

    - #### setEnumeration

          public void setEnumeration(Enumeration<? extends E> enumeration)

      Sets the underlying enumeration.
      Parameters:
        `enumeration` - the new underlying enumeration

Copyright © 2001–2013 The Apache Software Foundation. All rights reserved.