Java: la interfaz Map.Entry
La interfaz Map.Entry le permite trabajar con una entrada de mapa.
los entrySet( )El método declarado por la interfaz del mapa devuelve un conjunto que contiene las entradas del mapa. Cada uno de estos elementos del conjunto es un objeto Map.Entry.
La siguiente tabla resume los métodos declarados por esta interfaz:
No Señor. | Método y descripción |
---|---|
1 | boolean equals(Object obj) Devuelve verdadero si obj es un Map.Entry cuya clave y valor son iguales a los del objeto que invoca. |
2 | Object getKey( ) Devuelve la clave para esta entrada de mapa. |
3 | Object getValue( ) Devuelve el valor de esta entrada de mapa. |
4 | int hashCode( ) Devuelve el código hash para esta entrada de mapa. |
5 | Object setValue(Object v) Establece el valor de esta entrada de mapa en v. Se lanza una ClassCastException sivno es del tipo correcto para el mapa. Se lanza una NullPointerException sives nulo y el mapa no permite claves nulas. Se lanza una UnsupportedOperationException si el mapa no se puede cambiar. |
Ejemplo
A continuación se muestra un ejemplo que muestra cómo Map.Entry se puede utilizar -
import java.util.*;
public class HashMapDemo {
public static void main(String args[]) {
// Create a hash map
HashMap hm = new HashMap();
// Put elements to the map
hm.put("Zara", new Double(3434.34));
hm.put("Mahnaz", new Double(123.22));
hm.put("Ayan", new Double(1378.00));
hm.put("Daisy", new Double(99.22));
hm.put("Qadir", new Double(-19.08));
// Get a set of the entries
Set set = hm.entrySet();
// Get an iterator
Iterator i = set.iterator();
// Display elements
while(i.hasNext()) {
Map.Entry me = (Map.Entry)i.next();
System.out.print(me.getKey() + ": ");
System.out.println(me.getValue());
}
System.out.println();
// Deposit 1000 into Zara's account
double balance = ((Double)hm.get("Zara")).doubleValue();
hm.put("Zara", new Double(balance + 1000));
System.out.println("Zara's new balance: " + hm.get("Zara"));
}
}
Esto producirá el siguiente resultado:
Salida
Daisy: 99.22
Ayan: 1378.0
Zara: 3434.34
Qadir: -19.08
Mahnaz: 123.22
Zara's new balance: 4434.34