Module java.base
Package java.util

Class AbstractMap.SimpleImmutableEntry<K,​V>

java.lang.Object
java.util.AbstractMap.SimpleImmutableEntry<K,​V>
All Implemented Interfaces:
Serializable, Map.Entry<K,​V>
Enclosing class:
AbstractMap<K,​V>

public static class AbstractMap.SimpleImmutableEntry<K,​V>
extends Object
implements Map.Entry<K,​V>, Serializable
An Entry maintaining an immutable key and value. This class does not support method setValue. This class may be convenient in methods that return thread-safe snapshots of key-value mappings.
Since:
1.6
See Also:
Serialized Form
  • Constructor Summary

    Constructors 
    Constructor Description
    SimpleImmutableEntry​(Map.Entry<? extends K,​? extends V> entry)
    Creates an entry representing the same mapping as the specified entry.
    SimpleImmutableEntry​(K key, V value)
    Creates an entry representing a mapping from the specified key to the specified value.
  • Method Summary

    Modifier and Type Method Description
    boolean equals​(Object o)
    Compares the specified object with this entry for equality.
    K getKey()
    Returns the key corresponding to this entry.
    V getValue()
    Returns the value corresponding to this entry.
    int hashCode()
    Returns the hash code value for this map entry.
    V setValue​(V value)
    Replaces the value corresponding to this entry with the specified value (optional operation).
    String toString()
    Returns a String representation of this map entry.

    Methods declared in class java.lang.Object

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

    • SimpleImmutableEntry

      public SimpleImmutableEntry​(K key, V value)
      Creates an entry representing a mapping from the specified key to the specified value.
      Parameters:
      key - the key represented by this entry
      value - the value represented by this entry
    • SimpleImmutableEntry

      public SimpleImmutableEntry​(Map.Entry<? extends K,​? extends V> entry)
      Creates an entry representing the same mapping as the specified entry.
      Parameters:
      entry - the entry to copy
  • Method Details

    • getKey

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

      public V getValue()
      Returns the value corresponding to this entry.
      Specified by:
      getValue in interface Map.Entry<K,​V>
      Returns:
      the value corresponding to this entry
    • setValue

      public V setValue​(V value)
      Replaces the value corresponding to this entry with the specified value (optional operation). This implementation simply throws UnsupportedOperationException, as this class implements an immutable map entry.
      Specified by:
      setValue in interface Map.Entry<K,​V>
      Parameters:
      value - new value to be stored in this entry
      Returns:
      (Does not return)
      Throws:
      UnsupportedOperationException - always
    • equals

      public boolean equals​(Object o)
      Compares the specified object with this entry for equality. Returns true if the given object is also a map entry and the two entries represent the same mapping. More formally, two entries e1 and e2 represent the same mapping if
         (e1.getKey()==null ?
          e2.getKey()==null :
          e1.getKey().equals(e2.getKey()))
         &&
         (e1.getValue()==null ?
          e2.getValue()==null :
          e1.getValue().equals(e2.getValue()))
      This ensures that the equals method works properly across different implementations of the Map.Entry interface.
      Specified by:
      equals in interface Map.Entry<K,​V>
      Overrides:
      equals in class Object
      Parameters:
      o - object to be compared for equality with this map entry
      Returns:
      true if the specified object is equal to this map entry
      See Also:
      hashCode()
    • hashCode

      public int hashCode()
      Returns the hash code value for this map entry. The hash code of a map entry e is defined to be:
         (e.getKey()==null   ? 0 : e.getKey().hashCode()) ^
         (e.getValue()==null ? 0 : e.getValue().hashCode())
      This ensures that e1.equals(e2) implies that e1.hashCode()==e2.hashCode() for any two Entries e1 and e2, as required by the general contract of Object.hashCode().
      Specified by:
      hashCode in interface Map.Entry<K,​V>
      Overrides:
      hashCode in class Object
      Returns:
      the hash code value for this map entry
      See Also:
      equals(java.lang.Object)
    • toString

      public String toString()
      Returns a String representation of this map entry. This implementation returns the string representation of this entry's key followed by the equals character ("=") followed by the string representation of this entry's value.
      Overrides:
      toString in class Object
      Returns:
      a String representation of this map entry