Map es una interfaz en Java que se utiliza para asignar los valores del par de claves. Se utiliza para insertar, actualizar, eliminar elementos. Mientras que HashMap es una clase de Marco de colección de Java .
La interfaz Map solo se puede utilizar con una clase de implementación. Permite almacenar los valores en combinación de pares de claves; no permite claves duplicadas; sin embargo, podemos almacenar los valores duplicados. Sus clases de implementación son las siguientes:
- HashMap
- Tabla de picadillo
- ÁrbolMapa
- Mapa de hash concurrente
- LinkedHashMap
HashMap es una poderosa estructura de datos en Java que se utiliza para almacenar los valores del par de claves. Asigna un valor por su clave asociada. Nos permite almacenar los valores nulos y las claves nulas. Es una clase no sincronizada de Java recopilación.
Implementación de la interfaz del mapa
El Mapa La interfaz se puede implementar utilizando la clase de implementación. Considere el siguiente ejemplo:
import java.util.*; public class MapExample { public static void main(String args[]) { Map m = new HashMap(); //implementation of the Map Interface m.put('Abhi', new Integer(001)); //Adding elements m.put('Nick', new Integer(002)); m.put('Ketty', new Integer(003)); m.put('Paul', new Integer(004)); for (Map.Entry me : m.entrySet())// Traversing of the elements through the Map { System.out.print(me.getKey() + ':'); System.out.println(me.getValue()); } } }
Producción:
Nick:2 Abhi:1 Paul:4 Ketty:3
Implementación de la clase HashMap
La clase HashMap se puede declarar de la siguiente manera:
public class HashMap extends AbstractMap implements Map, Cloneable, Serializable
Considere el siguiente ejemplo para implementar HashMap:
//Java program to store the key-pair values using HashMap import java.util.*; public class HashMapDemo { public static void main(String args[]){ //HashMap implementation HashMap m=new HashMap();//Creating HashMap m.put(1,'Chris'); //Adding elements in Map m.put(2,'Morris'); m.put(3,'Sam'); m.put(4,'Cruise'); System.out.println('Iterating Hashmap...'); for(Map.Entry me : m.entrySet()){ System.out.println(me.getKey()+' '+me.getValue()); } } }
Producción:
Iterating Hashmap... 1 Chris 2 Morris 3 Sam 4 Cruise
Diferencias clave entre Map y HashMap
Algunas diferencias clave entre Map y HashMap son las siguientes:
- Map es una interfaz y HashMap es una clase del marco de colección de Java.
- La interfaz Map se puede implementar utilizando sus clases de implementación. En comparación, la clase HashMap implementa la interfaz Map.
- El mapa contiene valores de pares de claves únicos. Pero HashMap puede contener valores duplicados.
- El Mapa no permite valores nulos. Pero HashMap puede tener una clave nula y varios valores.
- Map tiene dos implementaciones, que son HashMap y TreeMap. Mientras que HashMap implementa la interfaz Map y extiende la clase AbstractMap.
- No hay diferencia entre los objetos Map y HashMap.