Map.Entry (Java SE 9 & JDK 9 )
-
- All Known Implementing Classes:
AbstractMap.SimpleEntry,AbstractMap.SimpleImmutableEntry
public static interface Map.Entry<K,V>A map entry (key-value pair). The
Map.entrySetmethod returns a collection-view of the map, whose elements are of this class. The only way to obtain a reference to a map entry is from the iterator of this collection-view. TheseMap.Entryobjects are valid only for the duration of the iteration; more formally, the behavior of a map entry is undefined if the backing map has been modified after the entry was returned by the iterator, except through thesetValueoperation on the map entry.- Since:
- 1.2
- See Also:
Map.entrySet()
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description static <K extends Comparable<? super K>,V>
Comparator<Map.Entry<K,V>>comparingByKey()Returns a comparator that compares
Map.Entryin natural order on key.static <K,V> Comparator<Map.Entry<K,V>>comparingByKey(Comparator<? super K> cmp)Returns a comparator that compares
Map.Entryby key using the givenComparator.static <K,V extends Comparable<? super V>>
Comparator<Map.Entry<K,V>>comparingByValue()Returns a comparator that compares
Map.Entryin natural order on value.static <K,V> Comparator<Map.Entry<K,V>>comparingByValue(Comparator<? super V> cmp)Returns a comparator that compares
Map.Entryby value using the givenComparator.booleanequals(Object o)Compares the specified object with this entry for equality.
KgetKey()Returns the key corresponding to this entry.
VgetValue()Returns the value corresponding to this entry.
inthashCode()Returns the hash code value for this map entry.
VsetValue(V value)Replaces the value corresponding to this entry with the specified value (optional operation).
-
-
-
Method Detail
-
getKey
K getKey()
Returns the key corresponding to this entry.
- Returns:
- the key corresponding to this entry
- Throws:
IllegalStateException- implementations may, but are not required to, throw this exception if the entry has been removed from the backing map.
-
getValue
V getValue()
Returns the value corresponding to this entry. If the mapping has been removed from the backing map (by the iterator's
removeoperation), the results of this call are undefined.- Returns:
- the value corresponding to this entry
- Throws:
IllegalStateException- implementations may, but are not required to, throw this exception if the entry has been removed from the backing map.
-
setValue
V setValue(V value)
Replaces the value corresponding to this entry with the specified value (optional operation). (Writes through to the map.) The behavior of this call is undefined if the mapping has already been removed from the map (by the iterator's
removeoperation).- Parameters:
value- new value to be stored in this entry- Returns:
- old value corresponding to the entry
- Throws:
UnsupportedOperationException- if theputoperation is not supported by the backing mapClassCastException- if the class of the specified value prevents it from being stored in the backing mapNullPointerException- if the backing map does not permit null values, and the specified value is nullIllegalArgumentException- if some property of this value prevents it from being stored in the backing mapIllegalStateException- implementations may, but are not required to, throw this exception if the entry has been removed from the backing map.
-
equals
boolean equals(Object o)
Compares the specified object with this entry for equality. Returns
trueif the given object is also a map entry and the two entries represent the same mapping. More formally, two entriese1ande2represent 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
equalsmethod works properly across different implementations of theMap.Entryinterface.- Overrides:
equalsin classObject- Parameters:
o- object to be compared for equality with this map entry- Returns:
trueif the specified object is equal to this map entry- See Also:
Object.hashCode(),HashMap
-
hashCode
int hashCode()
Returns the hash code value for this map entry. The hash code of a map entry
eis defined to be:(e.getKey()==null ? 0 : e.getKey().hashCode()) ^ (e.getValue()==null ? 0 : e.getValue().hashCode())This ensures that
e1.equals(e2)implies thate1.hashCode()==e2.hashCode()for any two Entriese1ande2, as required by the general contract ofObject.hashCode.- Overrides:
hashCodein classObject- Returns:
- the hash code value for this map entry
- See Also:
Object.hashCode(),Object.equals(Object),equals(Object)
-
comparingByKey
static <K extends Comparable<? super K>,V> Comparator<Map.Entry<K,V>> comparingByKey()
Returns a comparator that compares
Map.Entryin natural order on key.The returned comparator is serializable and throws
NullPointerExceptionwhen comparing an entry with a null key.- Type Parameters:
K- theComparabletype of then map keysV- the type of the map values- Returns:
- a comparator that compares
Map.Entryin natural order on key. - Since:
- 1.8
- See Also:
Comparable
-
comparingByValue
static <K,V extends Comparable<? super V>> Comparator<Map.Entry<K,V>> comparingByValue()
Returns a comparator that compares
Map.Entryin natural order on value.The returned comparator is serializable and throws
NullPointerExceptionwhen comparing an entry with null values.- Type Parameters:
K- the type of the map keysV- theComparabletype of the map values- Returns:
- a comparator that compares
Map.Entryin natural order on value. - Since:
- 1.8
- See Also:
Comparable
-
comparingByKey
static <K,V> Comparator<Map.Entry<K,V>> comparingByKey(Comparator<? super K> cmp)
Returns a comparator that compares
Map.Entryby key using the givenComparator.The returned comparator is serializable if the specified comparator is also serializable.
- Type Parameters:
K- the type of the map keysV- the type of the map values- Parameters:
cmp- the keyComparator- Returns:
- a comparator that compares
Map.Entryby the key. - Since:
- 1.8
-
comparingByValue
static <K,V> Comparator<Map.Entry<K,V>> comparingByValue(Comparator<? super V> cmp)
Returns a comparator that compares
Map.Entryby value using the givenComparator.The returned comparator is serializable if the specified comparator is also serializable.
- Type Parameters:
K- the type of the map keysV- the type of the map values- Parameters:
cmp- the valueComparator- Returns:
- a comparator that compares
Map.Entryby the value. - Since:
- 1.8
-
-
Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2017, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.