Introducción a HashMap en Java
En Java, puede usar la matriz para almacenar datos, pero siempre que haya un requisito para almacenar o recuperar datos en forma de clave y valor, debe usar HashMap para eso. Hashmap es una colección en Java que pertenece a la jerarquía de la interfaz llamada Map. En este artículo, discutiremos el Hashmap desde la perspectiva de la programación Java.
Sintaxis:
Para usar HashMap en su código, debe importar (importar el paquete java.util.HashMap) o su clase principal.
import java.util.HashMap;
import java.util.Map;
HashMap =new HashMap ();
Donde datatypeOfkey y dataytpeOfValue pueden ser Integer o String.
Ejemplo:
Map newHashMap = new HashMap();
¿Cómo funciona HashMap en Java?
Hashmap utiliza técnicas de hash para almacenar y recuperar elementos. Para el almacenamiento, utiliza una lista vinculada que se conoce como depósitos. Utiliza dos métodos en key: equals () y hashCode () para operaciones de inserción y recuperación. Durante la inserción, hashCode determina el depósito para el almacenamiento. Después de eso, nuevamente hashCode comprueba si ya hay una clave con el mismo hashCode; en caso afirmativo, el valor se reemplaza por el nuevo. De lo contrario, se crea el nuevo mapa en el que se almacenará el valor. Mientras se recuperan los datos, hashCode determina el depósito para la búsqueda. Después de eso, usando hashCode () y equals () obtiene el valor y lo devuelve. Devuelve nulo en caso de que no haya ningún valor presente.
Constructor HashMap en Java
Tiene cuatro constructores como se menciona a continuación.
- HashMap (): es el predeterminado con un factor de carga 0.75 y capacidad 16.
- HashMap (int): crea HashMap con la capacidad definida en sus argumentos. El factor de carga es el predeterminado aquí.
- HashMap (int, float): crea HashMap con la capacidad y el factor de carga definidos en sus argumentos.
- HashMap (Mapa m): Crea HashMap como se define en el mapa de argumentos.
Los 13 principales métodos de HashMap en Java
Todos los métodos a continuación discutidos aquí se pueden usar independientemente de cualquier versión de Java.
- valor público get (clave de objeto): se utiliza para obtener el valor de la clave correspondiente.
- valor público put (clave K, valor V): inserta el valor que se menciona en el argumento de la clave correspondiente.
- public boolean usesKey (Object key): decisión de si la clave está presente o no, tenga en cuenta que el tipo de retorno es booleano.
- public boolean usesValue (valor del objeto): decisión de si el valor está presente o no, tenga en cuenta que el tipo de retorno es booleano.
- public V remove (Object key): borra una clave particular y su HashMap de forma de valor como se especifica en el código.
- public void clear (): borra todas las claves y valores de HashMap como se mencionó.
- public boolean isEmpty (): Verifica si HashMap está vacío o no.
- Object clone (): este método devuelve las asignaciones de un HashMap que podemos usar para clonar a otro HashMap.
- public int size (): Devuelve el tamaño, es decir, cuántos pares clave-valor están presentes en un HashMap.
- Conjunto público
entrySet (): este conjunto devuelve el conjunto de asignaciones en HashMap. - public Set keySet () : este conjunto devuelve el conjunto de claves que está presente en HashMap.
- public void putAll (Map): copia todo el contenido del mapa al otro.
- Valores de colección (): puede obtener una colección de todos los valores para un HashMap.
Ejemplos de HashMap en Java
HashMap es una clase de colección basada en mapas que se utiliza para almacenar pares de clave y valor. Veamos algunos ejemplos.
Ejemplo 1
Discutiremos algunos ejemplos de código de HashMap aquí. Debe practicar los códigos escribiéndose usted mismo y ejecutar en el compilador de Java para verificar la salida. Puede hacer coincidir la salida con la dada para la verificación. Creación de HashMap e inserción de datos en él.
Código:
import java.util.HashMap;
import java.util.Map;
public class CreateHashMapExample (
public static void main(String() args) (
// Creating a HashMap
Map newHashMap = new HashMap();
// Addition of key and value
newHashMap.put("Key1", "Java");
newHashMap.put("Key2", "C++");
newHashMap.put("Key3", "Python");
// Addition of new key and value
newHashMap.putIfAbsent("Key4", "Ruby");
System.out.println(newHashMap);
)
)
Salida:
Ejemplo # 2
Tomemos otro ejemplo donde tomamos una cadena como clave y un entero como valor. Aquí mediremos la clave y sus valores correspondientes en pulgadas como valor.
Código:
import java.util.HashMap;
public class CreateHashMapExample2 (
public static void main(String() args) (
// Create a HashMap object called measurement
HashMap ms = new HashMap();
// Add keys and values (Name and phone number of the person)
ms.put("S", 35);
ms.put("M", 38);
ms.put("L", 40);
ms.put("XL", 42);
for (String key : ms.keySet()) (
System.out.println("measurement of " + key + " in inch is: " + ms.get(key));
)
)
)
Salida:
Ejemplo # 3
Aquí haremos múltiples cosas. Primero crearemos un Hashmap, luego obtendremos sus valores uno por uno. Después de eso, copiaremos todos los datos de HashMap a un nuevo HashMap. Después de eso, eliminaremos un artículo y obtendremos sus tamaños. Si el tamaño es menor en uno, se confirma la disminución del tamaño por eliminación.
Código:
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
public class HashMapInJava (
public static void main(String() args) (
Map newHashMap = new HashMap();
// Addition of key and value
newHashMap.put("Key1", "Lenovo");
newHashMap.put("Key2", "Motorola");
newHashMap.put("Key3", "Nokia");
newHashMap.put("Key4", null);
newHashMap.put(null, "Sony");
System.out.println("Original map contains:" + newHashMap);
//getting size of Hashmap
System.out.println("Size of original Map is:" + newHashMap.size());
//copy contains of one Hashmap to another
Map copyHashMap = new HashMap();
copyHashMap.putAll(newHashMap);
System.out.println("copyHashMap mappings= " + copyHashMap);
//Removal of null key
String nullKeyValue = copyHashMap.remove(null);
System.out.println("copyHashMap null key value = " + nullKeyValue);
System.out.println("copyHashMap after removing null key = " + copyHashMap);
System.out.println("Size of copyHashMap is:" + copyHashMap.size());
)
)
Salida:
¿Notó una cosa en la salida de HashMap en todos nuestros ejemplos, mientras imprimimos la clave y los valores? La impresión no está ordenada. Hashmap no es como una matriz, por lo que es necesario ordenar el escaneo y la impresión, puede elegir aleatoriamente en función del valor hash que obtiene.
Conclusión
Debería usar HashMap cuando su código o caso de uso requiera el manejo de datos en pares clave-valor. En este artículo, hemos aprendido sobre hashmaps en Java con ejemplos de código. Debe practicar escribir códigos por nuestra cuenta para dominar este tema.
Artículo recomendado
Esta es una guía de HashMap en Java. Aquí discutimos Introducción a HashMap en Java y sus Métodos junto con la implementación de Código y Salida. También puede consultar nuestros artículos sugeridos para obtener más información:
- Introducción a los marcos HTML
- Los 11 principales atributos HTML
- Aplicaciones de HTML | Los 10 usos principales
- 10 mejores diferencias HTML vs HTML5 (infografía)