org.apache.commons.collections4.bidimap

## Class AbstractDualBidiMap.BidiMapIterator<K,V>

- java.lang.Object
- - org.apache.commons.collections4.bidimap.AbstractDualBidiMap.BidiMapIterator<K,V>

- All Implemented Interfaces:
    Iterator<K>, MapIterator<K,V>, ResettableIterator<K>
  Enclosing class:
    AbstractDualBidiMap<K,V>

      protected static class AbstractDualBidiMap.BidiMapIterator<K,V>
      extends Object
      implements MapIterator<K,V>, ResettableIterator<K>

  Inner class MapIterator.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected boolean` | `canRemove` Whether remove is allowed at present
    `protected Iterator<Map.Entry<K,V>>` | `iterator` The iterator being wrapped
    `protected Map.Entry<K,V>` | `last` The last returned entry
    `protected AbstractDualBidiMap<K,V>` | `parent` The parent map

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `BidiMapIterator(AbstractDualBidiMap<K,V> parent)` Constructor.

  - ### Method Summary

    All Methods Instance Methods Concrete 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.
    `K` | `next()` Gets the next key from the `Map`.
    `void` | `remove()` Removes the last returned key from the underlying `Map` (optional operation).
    `void` | `reset()` Resets the iterator back to the position at which the iterator was created.
    `V` | `setValue(V value)` Sets the value associated with the current key (optional operation).
    `String` | `toString()`

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

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

    - ### Methods inherited from interface java.util.Iterator

      `forEachRemaining`

- - ### Field Detail

    - #### parent

          protected final AbstractDualBidiMap<K,V> parent

      The parent map

    - #### iterator

          protected Iterator<Map.Entry<K,V>> iterator

      The iterator being wrapped

    - #### last

          protected Map.Entry<K,V> last

      The last returned entry

    - #### canRemove

          protected boolean canRemove

      Whether remove is allowed at present

  - ### Constructor Detail

    - #### BidiMapIterator

          protected BidiMapIterator(AbstractDualBidiMap<K,V> parent)

      Constructor.
      Parameters:
        `parent` - the parent map

  - ### Method Detail

    - #### 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

    - #### 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>`

    - #### 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

    - #### reset

          public void reset()

      Description copied from interface: `ResettableIterator`
      Resets the iterator back to the position at which the iterator was created.
      Specified by:
        `reset` in interface `ResettableIterator<K>`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

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