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 unmodifiable Entry maintaining a key and a value. This class does not support the
setValue
method. Instances of this class are not associated with any map's entry-set view.- API Note:
- Instances of this class are not necessarily immutable, as the key and value may be mutable. An instance of this specific class is unmodifiable, because the key and value references cannot be changed. A reference of this type may not be unmodifiable, as a subclass may be modifiable or may provide the appearance of modifiability.
This class may be convenient in methods that return thread-safe snapshots of key-value mappings. For alternatives, see the
Map::entry
andMap.Entry::copyOf
methods. - Since:
- 1.6
- See Also:
Constructor Summary
Constructor | Description |
---|---|
SimpleImmutableEntry |
Creates an entry representing the same mapping as the specified entry. |
SimpleImmutableEntry |
Creates an entry representing a mapping from the specified key to the specified value. |
Method Summary
Modifier and Type | Method | Description |
---|---|---|
boolean |
equals |
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 |
Replaces the value corresponding to this entry with the specified value (optional operation). |
String |
toString() |
Returns a String representation of this map entry. |
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.
getValue
public V getValue()
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 unmodifiable map entry.- Specified by:
-
setValue
in interfaceMap.Entry<K,
V> - Implementation Requirements:
- The implementation in this class always throws
UnsupportedOperationException
. - 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.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()
.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.
© 1993, 2021, 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.
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/AbstractMap.SimpleImmutableEntry.html