Map.Entry

public static interface Map.Entry
Known Indirect Subclasses

A map entry (key-value pair). The Map.entrySet method 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. These Map.Entry objects 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 the setValue operation on the map entry.

See Also

Public Method Summary

static <K, V> Comparator<Entry<K, V>>
comparingByKey(Comparator<? super K> cmp)
Returns a comparator that compares Map.Entry by key using the given Comparator.
static <K extends Comparable<? super K>, V> Comparator<Entry<K, V>>
comparingByKey()
Returns a comparator that compares Map.Entry in natural order on key.
static <K, V> Comparator<Entry<K, V>>
comparingByValue(Comparator<? super V> cmp)
Returns a comparator that compares Map.Entry by value using the given Comparator.
static <K, V extends Comparable<? super V>> Comparator<Entry<K, V>>
comparingByValue()
Returns a comparator that compares Map.Entry in natural order on value.
abstract boolean
equals(Object o)
Compares the specified object with this entry for equality.
abstract K
getKey()
Returns the key corresponding to this entry.
abstract V
getValue()
Returns the value corresponding to this entry.
abstract int
hashCode()
Returns the hash code value for this map entry.
abstract V
setValue(V value)
Replaces the value corresponding to this entry with the specified value (optional operation).

Public Methods

public static Comparator<Entry<K, V>> comparingByKey (Comparator<? super K> cmp)

Returns a comparator that compares Map.Entry by key using the given Comparator.

The returned comparator is serializable if the specified comparator is also serializable.

Parameters
cmp the key Comparator
Returns
  • a comparator that compares Map.Entry by the key.

public static Comparator<Entry<K, V>> comparingByKey ()

Returns a comparator that compares Map.Entry in natural order on key.

The returned comparator is serializable and throws NullPointerException when comparing an entry with a null key.

Returns
  • a comparator that compares Map.Entry in natural order on key.
See Also

public static Comparator<Entry<K, V>> comparingByValue (Comparator<? super V> cmp)

Returns a comparator that compares Map.Entry by value using the given Comparator.

The returned comparator is serializable if the specified comparator is also serializable.

Parameters
cmp the value Comparator
Returns
  • a comparator that compares Map.Entry by the value.

public static Comparator<Entry<K, V>> comparingByValue ()

Returns a comparator that compares Map.Entry in natural order on value.

The returned comparator is serializable and throws NullPointerException when comparing an entry with null values.

Returns
  • a comparator that compares Map.Entry in natural order on value.
See Also

public abstract 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.

Parameters
o object to be compared for equality with this map entry
Returns
  • true if the specified object is equal to this map entry

public abstract 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.

public abstract V getValue ()

Returns the value corresponding to this entry. If the mapping has been removed from the backing map (by the iterator's remove operation), 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.

public abstract 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.

Returns
  • the hash code value for this map entry

public abstract 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 remove operation).

Parameters
value new value to be stored in this entry
Returns
  • old value corresponding to the entry
Throws
UnsupportedOperationException if the put operation is not supported by the backing map
ClassCastException if the class of the specified value prevents it from being stored in the backing map
NullPointerException if the backing map does not permit null values, and the specified value is null
IllegalArgumentException if some property of this value prevents it from being stored in the backing map
IllegalStateException implementations may, but are not required to, throw this exception if the entry has been removed from the backing map.