¿Cómo eliminar y acceder a los elementos ConcurrentHashMap en Java?

Como Eliminar Y Acceder A Los Elementos Concurrenthashmap En Java



El ' ConcurrentHashMapConcurrentHashMap ” class es la versión mejorada del HashMap tradicional. Brinda muchos beneficios al programador, como ahorrar mucho tiempo, más facilidad y mejora la flexibilidad. Puede realizar múltiples tareas en paralelo al mismo tiempo, sin embargo, para múltiples actualizaciones del valor de los nodos, solo se realiza una actualización a la vez.

Este artículo demuestra el procedimiento para eliminar y acceder a los elementos ConcurrentHashMap en Java.

¿Cómo eliminar elementos ConcurrentHashMap en Java?

Los elementos específicos se pueden eliminar de la “ ConcurrentHashMapConcurrentHashMap ” elementos a través del “ eliminar() ' método. Para eliminar todos los elementos a la vez, el botón “ claro() El método es la mejor opción para elegir.







También hay dos variaciones del método “remove()”:



  • El ' eliminar (clave) ” elimina la entidad que tiene el “ especificado llave ” del “ConcurrentHashMap”.
  • El ' eliminar (clave, valor) ” elimina la entidad que ha especificado “ llave ” a lo largo del correspondiente “ valor ” del “ConcurrentHashMap”.

Visite el siguiente bloque de código para una mejor explicación:



importar java.util.concurrent.ConcurrentHashMap ;
  clase Raíz
  {
  público estático vacío principal ( Cadena [ ] argumentos ) //creación del método main()
  { // Declaración ConcurrentHashMap
Equipo ConcurrentHashMap = nuevo ConcurrentHashMapConcurrentHashMap ( ) ;
Equipo. poner ( 'Thor' , 2 ) ;
Equipo. poner ( 'Extraño' , 4 ) ;
Equipo. poner ( 'Ojo de halcón' , 6 ) ;
    Sistema . afuera . imprimir ( 'ConcurrentHashMap:' + Equipo ) ;
 
    En t valor = Equipo. eliminar ( 'Extraño' ) ;
    Sistema . afuera . imprimir ( 'El valor ' + valor + ' es removido' ) ;
    Sistema . afuera . imprimir ( 'ConcurrentHashMap:' + Equipo ) ;
 
    booleano resultado = Equipo. eliminar ( 'Ojo de halcón' , 6 ) ;
    Sistema . afuera . imprimir ( '¿Se eliminó la entrada {Hawkeye = 6}?' + resultado ) ;
    Sistema . afuera . imprimir ( 'ConcurrentHashMap actualizado:' + Equipo ) ;

Equipo. claro ( ) ;
    Sistema . afuera . imprimir ( 'ConcurrentHashMap actualizado:' + Equipo ) ;

  }
  }

Descripción del bloque de código anterior:





  • Primero, el 'ConcurrentHashMap' llamado ' Equipo ” se crea, y luego se insertan datos ficticios dentro de él usando el “ poner ' método.
  • A continuación, el “ eliminar() Se utiliza el método ” y la clave de “ Extraño ” se le pasa. Este método elimina la entidad del mapa que tiene una clave de 'Extraño'.
  • Además, muestre los elementos restantes del mapa a través de 'ConcurrentHashMap'.
  • Ahora, pase el ' llave ” y correspondiente “ valor ' hacia ' eliminar() ” para eliminar una entidad del “ConcurrentHashMap” que tiene una clave y un valor específicos.
  • Después de eso, muestre el 'ConcurrentHashMap' para ver visualmente la diferencia.
  • Al final, utilice el “ claro() ” para eliminar todos los elementos residentes dentro del “ConcurrentHashMap”. Además, muestre el 'ConcurrentHashMap' en la consola al final.

Después del final de la fase de compilación:



La instantánea muestra los elementos que se han eliminado de ConcurrentHashMap.

¿Cómo acceder a los elementos ConcurrentHashMap en Java?

Los elementos de la “ ConcurrentHashMapConcurrentHashMap Se puede acceder a ” utilizando múltiples grupos de métodos. El primer grupo incluye “ conjuntoentrada() ”, “ juego de llaves() ' y ' valores() ' métodos. Se utilizan para recuperar todos los elementos a la vez. Mediante el uso de los métodos anteriores, el programador puede optar por recuperar todos los ' llaves ”, “ valores ' o ambos ' valor clave ” mapeo del mapa.

Visite el siguiente código para comprender la implementación práctica de los métodos anteriores:

importar java.util.concurrent.ConcurrentHashMap ;

clase Principal {
  público estático vacío principal ( Cadena [ ] argumentos ) //creación del método main()
  { // Declaración ConcurrentHashMap
Equipo ConcurrentHashMap = nuevo ConcurrentHashMapConcurrentHashMap ( ) ;
Equipo. poner ( 'Thor' , 2 ) ;
Equipo. poner ( 'Extraño' , 4 ) ;
Equipo. poner ( 'Ojo de halcón' , 6 ) ;
Equipo. poner ( 'Pantera negra' , 8 ) ;
  Sistema . afuera . imprimir ( 'ConcurrentHashMap:' + Equipo ) ;
  Sistema . afuera . imprimir ( 'Recuperar clave y valores:' + Equipo. conjunto de entrada ( ) ) ;
  Sistema . afuera . imprimir ( 'Recuperar claves:' + Equipo. juego de llaves ( ) ) ;
  Sistema . afuera . imprimir ( 'Recuperar valores:' + Equipo. valores ( ) ) ;
  }
}

Descripción del bloque de código anterior:

  • Primero, cree un 'ConcurrentHashMap' llamado ' Equipo ” e inserte múltiples elementos en él usando el “ poner() ' método.
  • A continuación, muestre el 'ConcurrentHashMap' en la consola usando el ' out.println() ' método.
  • Luego, use el “ conjuntoentrada() ” método para recuperar todos los datos presentes en el mapa.
  • Después de eso, utilice el “ juego de llaves() ” método para recuperar solo claves del mapa.
  • Al final, usa el “ valores() ” para recuperar solo los valores asociados con cada clave. Esto devuelve solo valores en secuencia.

Después de la ejecución del código anterior:

En la instantánea anterior, el resultado de los métodos utilizados anteriormente se muestra en la consola. Y se utilizan límites de diferentes colores para crear una separación visual entre la salida de cada método.

Ahora, el segundo grupo incluye el “ conseguir() ' y ' getOrDefault() ' métodos. Estos métodos se utilizan para recuperar el ' llaves ' desde el ' ConcurrentHashMapConcurrentHashMap ”. Por ejemplo, visite el siguiente bloque de código:

importar java.util.concurrent.ConcurrentHashMap ;
clase Principal {
  público estático vacío principal ( Cadena [ ] argumentos ) //creación del método main()
  { // Declaración ConcurrentHashMap
Equipo ConcurrentHashMap = nuevo ConcurrentHashMapConcurrentHashMap ( ) ;
Equipo. poner ( 'Thor' , 2 ) ;
Equipo. poner ( 'Extraño' , 4 ) ;
Equipo. poner ( 'Ojo de halcón' , 6 ) ;
Equipo. poner ( 'Pantera negra' , 8 ) ;
  Sistema . afuera . imprimir ( 'Usando getOrDefault(): ' + valor2 ) ;

  En t valor1 = Equipo. conseguir ( 'Ojo de halcón' ) ;
  Sistema . afuera . imprimir ( 'La clave recuperada para el valor especificado es:' + valor1 ) ;
  En t valor2 = Equipo. getOrDefault ( 'Romanoff' , 10 ) ;
  Sistema . afuera . imprimir ( 'ConcurrentHashMap:' + Equipo ) ;
  }
}

Explicación del código anterior:

  • Utilizar el mismo “ ConcurrentHashMapConcurrentHashMap ” que se crea en el bloque de código anterior.
  • Además, aplicar el “ conseguir() ” y pase el valor cuya clave se va a recuperar dentro de su paréntesis.
  • Además, utilizando el “ getOrDefault() ” método que toma dos parámetros/valores, el valor y la clave predeterminada. Si el objeto especificado se encuentra dentro del mapa, se recupera la clave correspondiente. Y si no se encuentra el valor especificado, se utiliza la clave predeterminada.
  • Después de eso, almacene los resultados de ambos métodos en variables y muéstrelos en la consola para fines de visualización.

Después de la ejecución del bloque de código anterior:

La instantánea anterior muestra las claves relativas a los valores recuperados e impresos en la consola.

Conclusión

Para eliminar/borrar elementos específicos de la “ ConcurrentHashMapConcurrentHashMap ' el ' eliminar() Se puede utilizar el método ”. Al usarlo, el programador puede eliminar un elemento que tiene un ' llave ” o correspondiente “ valor ”. Con el uso de la “ claro() ”, todos los elementos que residen en el mapa se eliminan a la vez. Para el acceso, el “ conjuntoentrada() ”, “ juego de llaves() ' y ' valores() Se utilizan métodos. Pueden recuperar todo “ claves/valores ”, “ llaves ', y ' valores ' desde el ' ConcurrentHashMapConcurrentHashMap ' En seguida. Para recuperar solo claves específicas, el ' conseguir ' y ' getOrDefault Se utilizan métodos.