Map.Entry
  public
  static
  
  
  interface
  Map.Entry
  
  
  
| java.util.Map.Entry<K, V> | 
A map entry (key-value pair). The Entry may be unmodifiable, or the
 value may be modifiable if the optional setValue method is
 implemented. The Entry may be independent of any map, or it may represent
 an entry of the entry-set view of a map.
 
 An Entry maintains a connection to its underlying map if the Entry was obtained by
 iterating the Map.entrySet view of a map, either explicitly by using an
 Iterator or implicitly via the enhanced for statement. This connection
 to the backing map is valid only during iteration of the entry-set view. During
 the iteration, if supported by the backing map, a change to an Entry's value via
 the setValue method will be visible in the backing map.
 The behavior of such an Entry is undefined outside of iteration of the map's entry-set
 view. It is also undefined if the backing map has been modified after the Entry was
 returned by the iterator, except through the setValue method. In addition,
 a change to the value of a mapping in the backing map might or might not be
 visible in the corresponding Entry of the entry-set view.
 
 An Entry may also be obtained from a map's entry-set view by other means, for
 example, using the
 parallelStream,
 stream,
 spliterator methods,
 any of the
 toArray overloads,
 or by copying the entry-set view into another collection. It is unspecified whether
 the obtained Entry instances are connected to the underlying map, whether changes
 to such an Entry will affect the underlying the map and vice-versa, and whether
 such an Entry supports the optional setValue method.
 
 In addition, an Entry may be obtained directly from a map, for example via calls
 to methods directly on the NavigableMap interface. An entry thus obtained
 is generally not connected to the map and is an unmodifiable snapshot of the mapping
 as of the time of the call. Such an Entry also does not generally support the
 setValue method.
 
 An Entry obtained by direct construction of the AbstractMap.SimpleEntry
 or AbstractMap.SimpleImmutableEntry classes or from a call to the
 Map.entry or Map.Entry.copyOf methods
 is not connected to any map.
See also:
Summary
| Public methods | |
|---|---|
| 
        
        
        static
        
        <K, V>
        Comparator<Entry<K, V>> | 
      comparingByKey(Comparator<? super K> cmp)
      Returns a comparator that compares  | 
| 
        
        
        static
        
        <K extends Comparable<? super K>, V>
        Comparator<Entry<K, V>> | 
      comparingByKey()
      Returns a comparator that compares  | 
| 
        
        
        static
        
        <K, V>
        Comparator<Entry<K, V>> | 
      comparingByValue(Comparator<? super V> cmp)
      Returns a comparator that compares  | 
| 
        
        
        static
        
        <K, V extends Comparable<? super V>>
        Comparator<Entry<K, V>> | 
      comparingByValue()
      Returns a comparator that compares  | 
| 
        
        
        static
        
        <K, V>
        Entry<K, V> | 
      copyOf(Entry<? extends K, ? extends V> e)
      Returns a copy of the given  | 
| 
        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
comparingByKey
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 | Comparator: the keyComparator | 
| Returns | |
|---|---|
| Comparator<Entry<K, V>> | a comparator that compares Map.Entryby the key. | 
comparingByKey
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 | |
|---|---|
| Comparator<Entry<K, V>> | a comparator that compares Map.Entryin natural order on key. | 
See also:
comparingByValue
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 | Comparator: the valueComparator | 
| Returns | |
|---|---|
| Comparator<Entry<K, V>> | a comparator that compares Map.Entryby the value. | 
comparingByValue
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 | |
|---|---|
| Comparator<Entry<K, V>> | a comparator that compares Map.Entryin natural order on value. | 
See also:
copyOf
public static Entry<K, V> copyOf (Entry<? extends K, ? extends V> e)
Returns a copy of the given Map.Entry. The returned instance is not
 associated with any map. The returned instance has the same characteristics
 as instances returned by the Map::entry method.
API Note:
- An instance obtained from a map's entry-set view has a connection to that map.
 The copyOfmethod may be used to create aMap.Entryinstance, containing the same key and value, that is independent of any map.
Implementation Note:
- If the given entry was obtained from a call to copyOforMap::entry, callingcopyOfwill generally not create another copy.
| Parameters | |
|---|---|
| e | Entry: the entry to be copied | 
| Returns | |
|---|---|
| Entry<K, V> | a map entry equal to the given entry | 
| Throws | |
|---|---|
| NullPointerException | if e is null or if either of its key or value is null | 
equals
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()))
 equals method works properly across
 different implementations of the Map.Entry interface.
    | Parameters | |
|---|---|
| o | Object: object to be compared for equality with this map entry | 
| Returns | |
|---|---|
| boolean | trueif the specified object is equal to this map
         entry | 
getKey
public abstract K getKey ()
Returns the key corresponding to this entry.
| Returns | |
|---|---|
| K | 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
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 | |
|---|---|
| V | 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. | 
hashCode
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())
 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 | |
|---|---|
| int | the hash code value for this map entry | 
setValue
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 | V: new value to be stored in this entry | 
| Returns | |
|---|---|
| V | old value corresponding to the entry | 
| Throws | |
|---|---|
| UnsupportedOperationException | if the putoperation
         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. | 
