logo

Clase de diccionario en Java

En Java, Diccionario es la lista de pares clave-valor. Podemos almacenar, recuperar, eliminar, obtener y poner valores en el diccionario utilizando la clase Diccionario Java. En esta sección, discutiremos la Java Diccionario clase que almacena datos en pares clave-valor al igual que la interfaz Map.

Clase de diccionario Java

Java Diccionario class es una clase padre de clase abstracta de cualquier clase. Pertenece a java.util paquete. Su subclase conocida directamente es la Tabla de picadillo clase. Al igual que la clase Hashtable, también asigna las claves a los valores. Tenga en cuenta que cada clave y valor es un objeto y cualquier objeto no nulo se puede utilizar como clave y como valor. La jerarquía de clases del Diccionario es la siguiente:

Clase de diccionario en Java

Cada clave está asociada con como máximo un valor, como se muestra en la siguiente figura. Una vez que el valor se almacena en un objeto de diccionario, podemos recuperarlo usando la clave.

Clase de diccionario en Java

Sintaxis:

 public abstract class Dictionary extends Object 

Nota: La clase está obsoleta. Entonces, implemente la interfaz del mapa en lugar de extender la clase.

Constructor de clases de diccionario

La clase sólo tiene un constructor llamado único constructor.

cadena.formato java cadena

Sintaxis:

 public Dictionary() 

Métodos de clase de diccionario

Todos los métodos de la clase Diccionario son abstracto . La siguiente tabla describe los métodos.

Método Descripción
elementos de enumeración abstractos públicos() Devuelve una enumeración de los valores de este diccionario. El objeto enum devuelto genera todos los elementos contenidos en las entradas de este diccionario.
resumen público V get (clave de objeto) Devuelve el valor al que está asignada la clave en este diccionario. Analiza un objeto (clave) en este diccionario. Tenga en cuenta que si este diccionario contiene una entrada para la clave especificada, se devuelve el valor asociado; de lo contrario, se devuelve nulo. Lanza NullPointerException si la clave es nula.
booleano abstracto público está vacío () El método comprueba si este diccionario no asigna claves al valor. Devuelve verdadero si y sólo si este diccionario no contiene entradas; en caso contrario, devuelve falso.
Claves de enumeración abstractas públicas () Devuelve una enumeración de las claves de este diccionario. El objeto enum devuelto genera todas las claves para las que este diccionario contiene entradas.
resumen público V put (clave K, valor V) El método se utiliza para insertar un par clave-valor en el diccionario. Asigna la clave especificada al valor especificado en este diccionario. Tenga en cuenta que ni la clave ni el valor pueden ser nulos.
Si el diccionario ya contiene una entrada para la clave especificada, se devuelve el valor que ya está en este diccionario para esa clave, después de modificar la entrada para que contenga el nuevo elemento.
Si el diccionario aún no tiene una entrada para la clave especificada, se crea una entrada para la clave y el valor especificados y se devuelve nulo.
Analiza la clave y el valor como parámetro. Lanza NullPointerException si la clave o el valor es nulo.
resumen público V eliminar (clave de objeto) El método analiza una clave que queremos eliminar. Elimina la clave y el valor asociado. Tenga en cuenta que el método no hace nada si la clave no está en el diccionario. Lanza NullPointerException si la clave es nula.
tamaño int abstracto público() Devuelve el número de entradas (claves distintas) en este diccionario.

Programas de diccionario Java

Uso del método Dictionary.put()

El método put() inserta los elementos en el diccionario. El siguiente programa demuestra lo mismo.

InsertElementExample.java

 import java.util.*; public class InsertElementExample { public static void main(String args[]) { //creating a dictionary Dictionary dict = new Hashtable(); //adding values in the dictionary dict.put(101, 'Sydney'); dict.put(102, 'Brisbane'); dict.put(103, 'Melbourne'); dict.put(104, 'Perth'); dict.put(105, 'Lismore'); dict.put(106, 'Mount Gambier'); dict.put(107, 'Nelson Bay'); dict.put(108, 'Canberra'); //prints keys and corresponding values System.out.println(dict); } } 

Producción:

 {108=Canberra, 107=Nelson Bay, 106=Mount Gambier, 105=Lismore, 104=Perth, 103=Melbourne, 102=Brisbane, 101=Sydney} 

Uso del método Dictionary.size()

El tamaño del diccionario es la cantidad de elementos que contiene el diccionario. En el siguiente programa, el tamaño del diccionario es 6.

DictionarySizeExample.java

 import java.util.*; public class DictionarySizeExample { public static void main(String args[]) { //creating a dictionary Dictionary dict = new Hashtable(); //adding values in the dictionary dict.put(101, 'Sydney'); dict.put(102, 'Brisbane'); dict.put(103, 'Melbourne'); dict.put(104, 'Perth'); dict.put(107, 'Nelson Bay'); dict.put(108, 'Canberra'); //prints the size of the dictionary System.out.println('The size of the dictionary is: '+dict.size()); } } 

Producción:

 The size of the dictionary is: 6 

Uso del método Dictionary.get()

Al utilizar el método get(), podemos recuperar el valor de una clave específica.

DictionaryGetElement.java

 import java.util.*; public class DictionaryGetElement { public static void main(String args[]) { //creating a dictionary Dictionary dict = new Hashtable(); //adding values in the dictionary dict.put(101, 'Sydney'); dict.put(102, 'Brisbane'); dict.put(103, 'Melbourne'); dict.put(104, 'Perth'); dict.put(107, 'Nelson Bay'); dict.put(108, 'Canberra'); //gets the value of the specified key System.out.println('The value of the specified key is: '+dict.get(103)); } } 

Producción:

mil millones a millón
 The value of the specified key is: Melbourne 

Uso del método Dictionary.isEmpty()

Devuelve verdadero si el diccionario está vacío; en caso contrario, devuelve falso.

EmptyCheckExample.java

 import java.util.*; public class EmptyCheckExample { public static void main(String args[]) { //creating a dictionary Dictionary dict = new Hashtable(); //adding values in the dictionary dict.put(101, 'Sydney'); dict.put(102, 'Brisbane'); dict.put(103, 'Melbourne'); dict.put(104, 'Perth'); //checks if the dictionary is empty or not System.out.println('Is the dictionary empty? 
'+dict.isEmpty()); } } 

Producción:

 Is the dictionary empty? false 

Uso del método Dictionary.remove()

El método elimina la clave y el valor correspondiente que hemos analizado en el método. El valor eliminado es devuelto por el método.

RemoveElementExample.java

 import java.util.*; public class RemoveElementExample { public static void main(String args[]) { //creating a dictionary Dictionary dict = new Hashtable(); //adding values in the dictionary dict.put(101, 'Sydney'); dict.put(108, 'Canberra'); dict.put(106, 'Mount Gambier'); dict.put(104, 'Perth'); dict.put(102, 'Brisbane'); //removes the corresponding value of the specified key System.out.println('The removed value is: '+dict.remove(106)); } } 

Producción:

 The removed value is: Mount Gambier 

Uso de los métodos elements() y key()

RemoveElementExample.java

 import java.util.*; public class IterateKeyAndValuesExample { public static void main(String args[]) { //creating a dictionary Dictionary dict = new Hashtable(); //adding values in the dictionary dict.put(101, 'Sydney'); dict.put(102, 'Brisbane'); dict.put(103, 'Melbourne'); dict.put(104, 'Perth'); dict.put(105, 'Lismore'); dict.put(106, 'Mount Gambier'); dict.put(107, 'Nelson Bay'); dict.put(108, 'Canberra'); System.out.println('Dictionary values are: 
'); //loop iterate over the values stored in the dictionary for(Enumeration enm = dict.elements(); enm.hasMoreElements();) { //prints the value System.out.println(enm.nextElement()); } System.out.println('
Dictionary keys are: 
'); //loop iterate over the keys stored in the dictionary for(Enumeration enm = dict.keys(); enm.hasMoreElements();) { //prints the keys System.out.println(enm.nextElement()); } } } 

Producción:

 Dictionary values are: Canberra Nelson Bay Mount Gambier Lismore Perth Melbourne Brisbane Sydney Dictionary keys are: 108 107 106 105 104 103 102 101 

Diferencia entre la clase HashMap y Dictionary

la java HashMap La clase y la clase Diccionario realizan una función similar. La única diferencia es que HashMap implementa la interfaz de mapa mientras que la clase Diccionario no . Según la documentación de Java, la clase Diccionario ya no se utiliza porque está desactualizada. En lugar de la clase Diccionario, se utiliza la clase HashMap. Ya que podemos decir que HashMap es un tipo de diccionario.