Class TiedMapEntry<K,V>

java.lang.Object
org.apache.commons.collections4.keyvalue.TiedMapEntry<K,V>
Type Parameters:
K - the type of keys
V - the type of mapped values
All Implemented Interfaces:
Serializable, Map.Entry<K,V>, KeyValue<K,V>

public class TiedMapEntry<K,V> extends Object implements Map.Entry<K,V>, KeyValue<K,V>, Serializable
A Map.Entry tied to a map underneath.

This can be used to enable a map entry to make changes on the underlying map, however this will probably mess up any iterators.

Since:
3.0
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private final K
    The key
    private final Map<K,V>
    The map underlying the entry/iterator
    private static final long
    Serialization version
  • Constructor Summary

    Constructors
    Constructor
    Description
    TiedMapEntry(Map<K,V> map, K key)
    Constructs a new entry with the given Map and key.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Compares this Map.Entry with another Map.Entry.
    Gets the key of this entry
    Gets the value of this entry direct from the map.
    int
    Gets a hashCode compatible with the equals method.
    setValue(V value)
    Sets the value associated with the key direct onto the map.
    Gets a string version of the entry.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Serialization version
      See Also:
    • map

      private final Map<K,V> map
      The map underlying the entry/iterator
    • key

      private final K key
      The key
  • Constructor Details

    • TiedMapEntry

      public TiedMapEntry(Map<K,V> map, K key)
      Constructs a new entry with the given Map and key.
      Parameters:
      map - the map
      key - the key
  • Method Details

    • getKey

      public K getKey()
      Gets the key of this entry
      Specified by:
      getKey in interface KeyValue<K,V>
      Specified by:
      getKey in interface Map.Entry<K,V>
      Returns:
      the key
    • getValue

      public V getValue()
      Gets the value of this entry direct from the map.
      Specified by:
      getValue in interface KeyValue<K,V>
      Specified by:
      getValue in interface Map.Entry<K,V>
      Returns:
      the value
    • setValue

      public V setValue(V value)
      Sets the value associated with the key direct onto the map.
      Specified by:
      setValue in interface Map.Entry<K,V>
      Parameters:
      value - the new value
      Returns:
      the old value
      Throws:
      IllegalArgumentException - if the value is set to this map entry
    • equals

      public boolean equals(Object obj)
      Compares this Map.Entry with another Map.Entry.

      Implemented per API documentation of Map.Entry.equals(Object)

      Specified by:
      equals in interface Map.Entry<K,V>
      Overrides:
      equals in class Object
      Parameters:
      obj - the object to compare to
      Returns:
      true if equal key and value
    • hashCode

      public int hashCode()
      Gets a hashCode compatible with the equals method.

      Implemented per API documentation of Map.Entry.hashCode()

      Specified by:
      hashCode in interface Map.Entry<K,V>
      Overrides:
      hashCode in class Object
      Returns:
      a suitable hash code
    • toString

      public String toString()
      Gets a string version of the entry.
      Overrides:
      toString in class Object
      Returns:
      entry as a string