AbstractMap.SimpleImmutableEntry (Java Platform SE 7 ) (original) (raw)
- 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 and Description AbstractMap.SimpleImmutableEntry(K key,V value) Creates an entry representing a mapping from the specified key to the specified value. AbstractMap.SimpleImmutableEntry(Map.Entry<? extends K,? extends V> entry) Creates an entry representing the same mapping as the specified entry. Method Summary
Methods
Modifier and Type Method and 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 inherited from class java.lang.[Object](../../java/lang/Object.html "class in java.lang") `[clone](../../java/lang/Object.html#clone%28%29), [finalize](../../java/lang/Object.html#finalize%28%29), [getClass](../../java/lang/Object.html#getClass%28%29), [notify](../../java/lang/Object.html#notify%28%29), [notifyAll](../../java/lang/Object.html#notifyAll%28%29), [wait](../../java/lang/Object.html#wait%28%29), [wait](../../java/lang/Object.html#wait%28long%29), [wait](../../java/lang/Object.html#wait%28long,%20int%29)`
Constructor Detail
* #### AbstractMap.SimpleImmutableEntry public AbstractMap.SimpleImmutableEntry([K](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry") key, [V](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry") 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 * #### AbstractMap.SimpleImmutableEntry public AbstractMap.SimpleImmutableEntry([Map.Entry](../../java/util/Map.Entry.html "interface in java.util")<? extends [K](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry"),? extends [V](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry")> entry) Creates an entry representing the same mapping as the specified entry. Parameters: `entry` \- the entry to copy
Method Detail
* #### getKey public [K](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry") getKey() Returns the key corresponding to this entry. **Specified by:** `[getKey](../../java/util/Map.Entry.html#getKey%28%29)` in interface `[Map.Entry](../../java/util/Map.Entry.html "interface in java.util")<[K](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry"),[V](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry")>` Returns: the key corresponding to this entry * #### getValue public [V](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry") getValue() Returns the value corresponding to this entry. **Specified by:** `[getValue](../../java/util/Map.Entry.html#getValue%28%29)` in interface `[Map.Entry](../../java/util/Map.Entry.html "interface in java.util")<[K](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry"),[V](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry")>` Returns: the value corresponding to this entry * #### setValue public [V](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry") setValue([V](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry") 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](../../java/util/Map.Entry.html#setValue%28V%29)` in interface `[Map.Entry](../../java/util/Map.Entry.html "interface in java.util")<[K](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry"),[V](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry")>` Parameters: `value` \- new value to be stored in this entry Returns: (Does not return) Throws: `[UnsupportedOperationException](../../java/lang/UnsupportedOperationException.html "class in java.lang")` \- always * #### equals public boolean equals([Object](../../java/lang/Object.html "class in java.lang") 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](../../java/util/Map.Entry.html#equals%28java.lang.Object%29)` in interface `[Map.Entry](../../java/util/Map.Entry.html "interface in java.util")<[K](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry"),[V](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry")>` **Overrides:** `[equals](../../java/lang/Object.html#equals%28java.lang.Object%29)` in class `[Object](../../java/lang/Object.html "class in java.lang")` 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()](../../java/util/AbstractMap.SimpleImmutableEntry.html#hashCode%28%29) * #### 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()](../../java/lang/Object.html#hashCode%28%29). **Specified by:** `[hashCode](../../java/util/Map.Entry.html#hashCode%28%29)` in interface `[Map.Entry](../../java/util/Map.Entry.html "interface in java.util")<[K](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry"),[V](../../java/util/AbstractMap.SimpleImmutableEntry.html "type parameter in AbstractMap.SimpleImmutableEntry")>` **Overrides:** `[hashCode](../../java/lang/Object.html#hashCode%28%29)` in class `[Object](../../java/lang/Object.html "class in java.lang")` Returns: the hash code value for this map entry See Also: [equals(java.lang.Object)](../../java/util/AbstractMap.SimpleImmutableEntry.html#equals%28java.lang.Object%29) * #### toString public [String](../../java/lang/String.html "class in java.lang") 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](../../java/lang/Object.html#toString%28%29)` in class `[Object](../../java/lang/Object.html "class in java.lang")` Returns: a String representation of this map entry
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2020, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.