java.util
Class LinkedHashMap.Entry

java.lang.Object
  extended byjava.util.HashMap.Entry
      extended byjava.util.LinkedHashMap.Entry
All Implemented Interfaces:
Map.Entry
Enclosing class:
LinkedHashMap

private static class LinkedHashMap.Entry
extends HashMap.Entry

LinkedHashMap entry.


Field Summary
(package private)  LinkedHashMap.Entry after
           
(package private)  LinkedHashMap.Entry before
           
(package private)  int hash
           
(package private)  Object key
           
(package private)  HashMap.Entry next
           
(package private)  Object value
           
 
Constructor Summary
(package private) LinkedHashMap.Entry(int hash, Object key, Object value, HashMap.Entry next)
           
 
Method Summary
private  void addBefore(LinkedHashMap.Entry existingEntry)
          Insert this entry before the specified existing entry in the list.
 boolean equals(Object o)
          Compares the specified object with this entry for equality.
 Object getKey()
          Returns the key corresponding to this entry.
 Object getValue()
          Returns the value corresponding to this entry.
 int hashCode()
          Returns the hash code value for this map entry.
(package private)  void recordAccess(HashMap m)
          This method is invoked by the superclass whenever the value of a pre-existing entry is read by Map.get or modified by Map.set.
(package private)  void recordRemoval(HashMap m)
          This method is invoked whenever the entry is removed from the table.
private  void remove()
          Remove this entry from the linked list.
 Object setValue(Object newValue)
          Replaces the value corresponding to this entry with the specified value (optional operation).
 String toString()
          Returns a string representation of the object.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

before

LinkedHashMap.Entry before

after

LinkedHashMap.Entry after

key

final Object key

value

Object value

hash

final int hash

next

HashMap.Entry next
Constructor Detail

LinkedHashMap.Entry

LinkedHashMap.Entry(int hash,
                    Object key,
                    Object value,
                    HashMap.Entry next)
Method Detail

remove

private void remove()
Remove this entry from the linked list.


addBefore

private void addBefore(LinkedHashMap.Entry existingEntry)
Insert this entry before the specified existing entry in the list.


recordAccess

void recordAccess(HashMap m)
This method is invoked by the superclass whenever the value of a pre-existing entry is read by Map.get or modified by Map.set. If the enclosing Map is access-ordered, it moves the entry to the end of the list; otherwise, it does nothing.

Overrides:
recordAccess in class HashMap.Entry

recordRemoval

void recordRemoval(HashMap m)
Description copied from class: HashMap.Entry
This method is invoked whenever the entry is removed from the table.

Overrides:
recordRemoval in class HashMap.Entry

getKey

public Object getKey()
Description copied from interface: Map.Entry
Returns the key corresponding to this entry.

Specified by:
getKey in interface Map.Entry
Returns:
the key corresponding to this entry.

getValue

public Object getValue()
Description copied from interface: Map.Entry
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.

Specified by:
getValue in interface Map.Entry
Returns:
the value corresponding to this entry.

setValue

public Object setValue(Object newValue)
Description copied from interface: Map.Entry
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).

Specified by:
setValue in interface Map.Entry
Parameters:
newValue - new value to be stored in this entry.
Returns:
old value corresponding to the entry.

equals

public boolean equals(Object o)
Description copied from interface: Map.Entry
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 in interface Map.Entry
Overrides:
equals in class Object
Parameters:
o - the reference object with which to compare.
Returns:
true if this object is the same as the obj argument; false otherwise.
See Also:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
Description copied from interface: Map.Entry
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.

Specified by:
hashCode in interface Map.Entry
Overrides:
hashCode in class Object
Returns:
a hash code value for this object.
See Also:
Object.equals(java.lang.Object), Hashtable

toString

public String toString()
Description copied from class: Object
Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Overrides:
toString in class Object
Returns:
a string representation of the object.