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.
public SimpleImmutableEntry(K key, V value)
Creates an entry representing a mapping from the specified key to the specified value.
key
- the key represented by this entryvalue
- the value represented by this entrypublic SimpleImmutableEntry(Map.Entry<? extends K,? extends V> entry)
Creates an entry representing the same mapping as the specified entry.
entry
- the entry to copypublic K getKey()
Returns the key corresponding to this entry.
public V getValue()
Returns the value corresponding to this entry.
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.
setValue
in interface Map.Entry<K,V>
value
- new value to be stored in this entryUnsupportedOperationException
- alwayspublic 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. equals
in interface Map.Entry<K,V>
equals
in class Object
o
- object to be compared for equality with this map entrytrue
if the specified object is equal to this map entryhashCode()
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()
. hashCode
in interface Map.Entry<K,V>
hashCode
in class Object
equals(java.lang.Object)
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.
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.