Métodos de clase HashMap en Java con ejemplos | Conjunto 1 (put(), get(), isEmpty() y size())

HashMap es una estructura de datos que utiliza una función hash para asignar valores de identificación, conocidos como claves, a sus valores asociados. Contiene pares “clave-valor” y permite recuperar valor por clave.

La característica más impresionante es su búsqueda rápida de elementos, especialmente para grandes no. de elementos No viene sincronizado por defecto pero podemos hacerlo llamando

 Map myhash = Collections.synchronizedMap(hashMap);

en el momento de la creación, para evitar el acceso no sincronizado accidental al mapa.

Estos son varios métodos de clase hashmap importantes. Esta publicación explica: put(), get(), isEmpty() y size()

  1. put(): java.util.HashMap.put() desempeña un papel en la asociación del valor especificado con la clave especificada en este mapa. Si el mapa contenía anteriormente una asignación para la clave, se reemplaza el valor anterior.

    Sintaxis:

    public V put(K key,V value)
    Parameters:
    key - key with which the specified value is to be associated
    value - value to be associated with the specified key
    Return: the previous value associated with
    key, or null if there was no mapping for key. 
    
  2. get(): el método java.util.HashMap.get() devuelve el valor al que se asigna la clave especificada, o nulo si este mapa no contiene ninguna asignación para la clave.

    Sintaxis:

    public V get(Object key)
    Parameters:
    key - the key whose associated value is to be returned
    Return: the value to which the specified 
    key is mapped, or null if this map contains no mapping for
    the key.
    
  3. isEmpty(): el método java.util.HashMap.isEmpty() devuelve verdadero si el mapa no contiene asignaciones de clave-valor.

    Sintaxis:

    public boolean isEmpty()
    Return: true if this map contains no key-value mappings
    
  4. size(): java.util.HashMap.size() devuelve el número de asignaciones de clave-valor en este mapa.

    Sintaxis:

    public int size()
    Return: the number of key-value mappings in this map.
    

Implementación para ilustrar los métodos anteriores

// Java program illustrating use of HashMap methods -
// put(), get(), isEmpty() and size()
import java.util.*;
public class NewClass
{
    public static void main(String args[])
    {
        // Creation of HashMap
        HashMap<String, String> Geeks = new HashMap<>();
  
        // Adding values to HashMap as ("keys", "values")
        Geeks.put("Language", "Java");
        Geeks.put("Platform", "Geeks For geeks");
        Geeks.put("Code", "HashMap");
        Geeks.put("Learn", "More");
  
        System.out.println("Testing .isEmpty() method");
  
        // Checks whether the HashMap is empty or not
        // Not empty so printing the values
        if (!Geeks.isEmpty())
        {
            System.out.println("HashMap Geeks is notempty");
  
            // Accessing the contents of HashMap through Keys
            System.out.println("GEEKS : " + Geeks.get("Language"));
            System.out.println("GEEKS : " + Geeks.get("Platform"));
            System.out.println("GEEKS : " + Geeks.get("Code"));
            System.out.println("GEEKS : " + Geeks.get("Learn"));
  
            // size() method prints the size of HashMap.
            System.out.println("Size Of HashMap : " + Geeks.size());
        }
    }
}

Producción

Testing .isEmpty() method
HashMap Geeks is notempty
GEEKS : Java
GEEKS : Geeks For geeks
GEEKS : HashMap
GEEKS : More
Size Of HashMap : 4

¿Cuáles son las diferencias entre HashMap y TreeMap?

  1. HashMap implementa la interfaz Map mientras que TreeMap implementa la interfaz SortedMap. Una interfaz de Mapa ordenado es un elemento secundario de Mapa.
  2. HashMap implementa Hashing, mientras que TreeMap implementa Red-Black Tree (un árbol de búsqueda binario autoequilibrado). Por lo tanto , aquí se aplican todas las diferencias entre Hashing y Balanced Binary Search Tree .
  3. Tanto HashMap como TreeMap tienen sus contrapartes HashSet y TreeSet. HashSet y TreeSet implementan la interfaz Set . En HashSet y TreeSet, solo tenemos clave, sin valor, estos se usan principalmente para ver presencia/ausencia en un conjunto. Para el problema anterior, no podemos usar HashSet (o TreeSet) ya que no podemos almacenar recuentos. Un problema de ejemplo en el que preferiríamos HashSet (o TreeSet) sobre HashMap (o TreeMap) es imprimir todos los elementos distintos en una array.

Consulte HashMap y TreeMap para obtener más detalles.

¿Cuáles son las diferencias entre HashMap y HashTable en Java?

  • HashMap no está sincronizado. No es seguro para subprocesos y no se puede compartir entre muchos subprocesos sin el código de sincronización adecuado, mientras que Hashtable está sincronizado. Es seguro para subprocesos y se puede compartir con muchos subprocesos.
  • HashMap permite una clave nula y varios valores nulos, mientras que Hashtable no permite ninguna clave o valor nulo.
  • Generalmente se prefiere HashMap sobre HashTable si no se necesita la sincronización de subprocesos.
  • HashMap es una versión avanzada y una mejora de Hashtable. HashMap se creó más tarde.

Consulte las diferencias entre HashMap y HashTable en Java para obtener más detalles.

¿Cuáles son las diferencias entre HashMap y HashSet?

  • HashMap almacena pares de valores clave (por ejemplo, registros de estudiantes como valor y número de rollo como clave) y HashSet almacena solo claves (por ejemplo, un conjunto si son números enteros).
  • HashSet usa internamente HashMap para almacenar claves

Consulte HashSet en Java para obtener más detalles.


métodos Hashmap en Java con ejemplos | Conjunto 2 (keySet(), valores(), containsKey())

Referencia:
https://docs.oracle.com/javase/7/docs/api/java/util/HashMap.html

Este artículo es una contribución de Mohit Gupta . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *