Map.Entry (Java 2 Platform SE 5.0) (original) (raw)


java.util

Interface Map.Entry<K,V>

Enclosing interface:

Map<K,V>


public static interface Map.Entry<K,V>

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.

Since:

1.2

See Also:

Map.entrySet()


Method Summary
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).
Method Detail

getKey

K getKey()

Returns the key corresponding to this entry.

Returns:

the key corresponding to this entry.

Throws:

[IllegalStateException](../../java/lang/IllegalStateException.html "class in java.lang") - 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'sremove operation), the results of this call are undefined.

Returns:

the value corresponding to this entry.

Throws:

[IllegalStateException](../../java/lang/IllegalStateException.html "class in java.lang") - 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 remove operation).

Parameters:

value - new value to be stored in this entry.

Returns:

old value corresponding to the entry.

Throws:

[UnsupportedOperationException](../../java/lang/UnsupportedOperationException.html "class in java.lang") - if the put operation is not supported by the backing map.

[ClassCastException](../../java/lang/ClassCastException.html "class in java.lang") - if the class of the specified value prevents it from being stored in the backing map.

[IllegalArgumentException](../../java/lang/IllegalArgumentException.html "class in java.lang") - if some aspect of this value prevents it from being stored in the backing map.

[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang") - if the backing map does not permitnull values, and the specified value isnull.

[IllegalStateException](../../java/lang/IllegalStateException.html "class in java.lang") - 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 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.

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:

Object.hashCode(), Hashtable


hashCode

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 thate1.hashCode()==e2.hashCode() for any two Entriese1 and e2, as required by the general contract of Object.hashCode.

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:

Object.hashCode(), Object.equals(Object), equals(Object)



Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.