org.apache.commons.collections4.iterators

## Class UnmodifiableOrderedMapIterator<K,V>

- java.lang.Object
- - org.apache.commons.collections4.iterators.UnmodifiableOrderedMapIterator<K,V>

- All Implemented Interfaces:
    Iterator<K>, MapIterator<K,V>, OrderedIterator<K>, OrderedMapIterator<K,V>, Unmodifiable

      public final class UnmodifiableOrderedMapIterator<K,V>
      extends Object
      implements OrderedMapIterator<K,V>, Unmodifiable

  Decorates an ordered map iterator such that it cannot be modified.

  Attempts to modify it will result in an UnsupportedOperationException.

  Since:
    3.0
  Version:
    $Id: UnmodifiableOrderedMapIterator.java 1533984 2013-10-20 21:12:51Z tn $

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `K` | `getKey()` Gets the current key, which is the key returned by the last call to `next()`.
    `V` | `getValue()` Gets the current value, which is the value associated with the last key returned by `next()`.
    `boolean` | `hasNext()` Checks to see if there are more entries still to be iterated.
    `boolean` | `hasPrevious()` Checks to see if there is a previous entry that can be iterated to.
    `K` | `next()` Gets the next key from the `Map`.
    `K` | `previous()` Gets the previous key from the `Map`.
    `void` | `remove()` Removes the last returned key from the underlying `Map` (optional operation).
    `V` | `setValue(V value)` Sets the value associated with the current key (optional operation).
    `static <K,V> OrderedMapIterator<K,V>` | `unmodifiableOrderedMapIterator(OrderedMapIterator<K,? extends V> iterator)` Decorates the specified iterator such that it cannot be modified.

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

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

- - ### Method Detail

    - #### unmodifiableOrderedMapIterator

          public static <K,V> OrderedMapIterator<K,V> unmodifiableOrderedMapIterator(OrderedMapIterator<K,? extends V> iterator)

      Decorates the specified iterator such that it cannot be modified.
      Type Parameters:
        `K` - the key type
        `V` - the value type
      Parameters:
        `iterator` - the iterator to decorate
      Returns:
        a new unmodifiable ordered map iterator
      Throws:
        `IllegalArgumentException` - if the iterator is null

    - #### hasNext

          public boolean hasNext()

      Description copied from interface: `MapIterator`
      Checks to see if there are more entries still to be iterated.
      Specified by:
        `hasNext` in interface `Iterator<K>`
      Specified by:
        `hasNext` in interface `MapIterator<K,V>`
      Returns:
        `true` if the iterator has more elements

    - #### next

          public K next()

      Description copied from interface: `MapIterator`
      Gets the next key from the `Map`.
      Specified by:
        `next` in interface `Iterator<K>`
      Specified by:
        `next` in interface `MapIterator<K,V>`
      Returns:
        the next key in the iteration

    - #### hasPrevious

          public boolean hasPrevious()

      Description copied from interface: `OrderedMapIterator`
      Checks to see if there is a previous entry that can be iterated to.
      Specified by:
        `hasPrevious` in interface `OrderedIterator<K>`
      Specified by:
        `hasPrevious` in interface `OrderedMapIterator<K,V>`
      Returns:
        `true` if the iterator has a previous element

    - #### previous

          public K previous()

      Description copied from interface: `OrderedMapIterator`
      Gets the previous key from the `Map`.
      Specified by:
        `previous` in interface `OrderedIterator<K>`
      Specified by:
        `previous` in interface `OrderedMapIterator<K,V>`
      Returns:
        the previous key in the iteration

    - #### getKey

          public K getKey()

      Description copied from interface: `MapIterator`
      Gets the current key, which is the key returned by the last call to `next()`.
      Specified by:
        `getKey` in interface `MapIterator<K,V>`
      Returns:
        the current key

    - #### getValue

          public V getValue()

      Description copied from interface: `MapIterator`
      Gets the current value, which is the value associated with the last key returned by `next()`.
      Specified by:
        `getValue` in interface `MapIterator<K,V>`
      Returns:
        the current value

    - #### setValue

          public V setValue(V value)

      Description copied from interface: `MapIterator`
      Sets the value associated with the current key (optional operation).
      Specified by:
        `setValue` in interface `MapIterator<K,V>`
      Parameters:
        `value` - the new value
      Returns:
        the previous value

    - #### remove

          public void remove()

      Description copied from interface: `MapIterator`
      Removes the last returned key from the underlying `Map` (optional operation).

      This method can be called once per call to `next()`.

      Specified by:
        `remove` in interface `Iterator<K>`
      Specified by:
        `remove` in interface `MapIterator<K,V>`

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