logo

Ordbogsklasse i Java

I Java, Ordbog er listen over nøgleværdi-par. Vi kan gemme, hente, fjerne, hente og sætte værdier i ordbogen ved at bruge Java Dictionary-klassen. I dette afsnit vil vi diskutere Java Ordbog klasse, der gemmer data i nøgleværdi-par ligesom kortgrænsefladen.

Java ordbog klasse

Java Ordbog klasse er en abstrakt klasseforælderklasse for enhver klasse. Det hører til java.util pakke. Dens direkte kendte underklasse er Hastbar klasse. Ligesom Hashtable-klassen kortlægger den også nøglerne til værdier. Bemærk, at hver nøgle og værdi er et objekt, og ethvert ikke-nullobjekt kan bruges som en nøgle og som en værdi. Ordbogs klassehierarkiet er som følger:

Ordbogsklasse i Java

Hver nøgle er forbundet med højst én værdi, som vist i den følgende figur. Når værdien er gemt i et ordbogsobjekt, kan vi hente den ved at bruge tasten.

Ordbogsklasse i Java

Syntaks:

 public abstract class Dictionary extends Object 

Bemærk: Klassen er forældet. Så implementer kortgrænsefladen i stedet for at udvide klassen.

Ordbogsklassekonstruktør

Klassen har kun en konstruktør kaldet a eneste konstruktør.

Syntaks:

min flixer
 public Dictionary() 

Ordbogsklassemetoder

Alle metoderne i Ordbogsklassen er abstrakt . Følgende tabel beskriver metoderne.

Metode Beskrivelse
offentligt abstrakt Optællingselementer() Det returnerer en opregning af værdierne i denne ordbog. Det returnerede enum-objekt genererer alle de elementer, der er indeholdt i indgange i denne ordbog.
offentlig abstrakt V get(Objektnøgle) Det returnerer den værdi, som nøglen er knyttet til i denne ordbog. Den analyserer et objekt (nøgle) i denne ordbog. Bemærk, at hvis denne ordbog indeholder en post for den angivne nøgle, returneres den tilknyttede værdi; ellers returneres null. Det kaster NullPointerException, hvis nøglen er null.
public abstract boolean isEmpty() Metoden kontrollerer, om denne ordbog ikke knytter nogen nøgler til værdi. Det returnerer sandt, hvis og kun hvis denne ordbog ikke indeholder nogen poster, ellers returnerer den falsk.
offentligt abstrakt Optællingsnøgler() Det returnerer en oversigt over nøglerne i denne ordbog. Det returnerede enum-objekt genererer alle de nøgler, som denne ordbog indeholder poster til.
offentlig abstrakt V put(K nøgle, V værdi) Metoden bruges til at indsætte nøgle-værdi-par i ordbogen. Den knytter den angivne nøgle til den angivne værdi i denne ordbog. Bemærk, at hverken nøgle eller værdi kan være nul.
Hvis ordbogen allerede indeholder en post for den angivne nøgle, returneres værdien, der allerede er i denne ordbog for den pågældende nøgle, efter ændring af posten til at indeholde det nye element.
Hvis ordbogen ikke allerede har en post for den angivne nøgle, oprettes en post for den angivne nøgle og værdi, og null returneres.
Den analyserer nøgle og værdi som en parameter. Det kaster NullPointerException, hvis nøglen eller værdien er null.
offentlig abstrakt V fjern (objektnøgle) Metoden analyserer en nøgle, som vi vil fjerne. Det fjerner nøglen og tilhørende værdi. Bemærk, at metoden ikke gør noget, hvis nøglen ikke er i ordbogen. Det kaster NullPointerException, hvis nøglen er null.
offentlig abstrakt int størrelse() Det returnerer antallet af indgange (særskilte nøgler) i denne ordbog.

Java ordbog programmer

Brug af Dictionary.put()-metoden

Put()-metoden indsætter elementerne i ordbogen. Følgende program demonstrerer det samme.

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); } } 

Produktion:

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

Brug af Dictionary.size()-metoden

Størrelsen på ordbogen er antallet af elementer, ordbogen indeholder. I det følgende program er ordbogens størrelse 6.

OrdbogStørrelseEksempel.java

java-strengen er tom
 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()); } } 

Produktion:

 The size of the dictionary is: 6 

Brug af Dictionary.get()-metoden

Ved at bruge get() metoden kan vi hente værdien af ​​en specificeret nøgle.

konverter streng til char java

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)); } } 

Produktion:

 The value of the specified key is: Melbourne 

Brug af Dictionary.isEmpty()-metoden

Den returnerer sand, hvis ordbogen er tom, ellers returnerer den falsk.

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()); } } 

Produktion:

 Is the dictionary empty? false 

Brug af Dictionary.remove()-metoden

Metoden fjerner nøglen og tilsvarende værdi, som vi har parset i metoden. Den fjernede værdi returneres af metoden.

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)); } } 

Produktion:

 The removed value is: Mount Gambier 

Brug af elementer() og key() metoder

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()); } } } 

Produktion:

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

Forskellen mellem HashMap og Dictionary Class

Java HashMap klasse og Ordbog-klassen udfører begge en lignende funktion. Den eneste forskel er det HashMap implementerer kortgrænsefladen, mens klassen Ordbog ikke gør det . Ifølge Java-dokumentation er klassen Ordbog ikke længere i brug, fordi den er forældet. I stedet for Ordbog-klassen bruges HashMap-klassen. Da vi kan sige, at HashMap er en type ordbog.