Class 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:
    Serialized Form
    • Constructor Detail

      • 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 Detail

      • 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