logo

Ordbokklasse i Java

I Java, Ordbok er listen over nøkkelverdi-par. Vi kan lagre, hente, fjerne, hente og sette verdier i ordboken ved å bruke Java Dictionary-klassen. I denne delen vil vi diskutere Java Ordbok klasse som lagrer data i nøkkelverdi-par akkurat som kartgrensesnittet.

Java-ordbokklasse

Java Ordbok klasse er en abstrakt klasseoverordnet klasse for en hvilken som helst klasse. Det tilhører java.util pakke. Dens direkte kjente underklasse er Hastbar klasse. I likhet med Hashtable-klassen, kartlegger den også nøklene til verdier. Merk at hver nøkkel og verdi er et objekt, og ethvert objekt som ikke er null kan brukes som en nøkkel og som en verdi. Ordbokklassehierarkiet er som følger:

Ordbokklasse i Java

Hver nøkkel er assosiert med maksimalt én verdi, som vist i følgende figur. Når verdien er lagret i et ordbokobjekt, kan vi hente den ved å bruke nøkkelen.

Ordbokklasse i Java

Syntaks:

 public abstract class Dictionary extends Object 

Merk: Klassen er foreldet. Så implementer kartgrensesnittet i stedet for å utvide klassen.

Ordbok Klasse Konstruktør

Klassen har bare en konstruktør kalt a såle konstruktør.

Syntaks:

flixeren min
 public Dictionary() 

Ordbok Klassemetoder

Alle metodene i Ordbok-klassen er abstrakt . Følgende tabell beskriver metodene.

Metode Beskrivelse
offentlig abstrakt Oppregningselementer() Den returnerer en oppregning av verdiene i denne ordboken. Det returnerte enum-objektet genererer alle elementene i oppføringene i denne ordboken.
offentlig abstrakt V get(Objektnøkkel) Den returnerer verdien som nøkkelen er tilordnet i denne ordboken. Den analyserer et objekt (nøkkel) i denne ordboken. Merk at hvis denne ordboken inneholder en oppføring for den angitte nøkkelen, returneres den tilknyttede verdien; ellers returneres null. Den kaster NullPointerException hvis nøkkelen er null.
offentlig abstrakt boolsk isEmpty() Metoden sjekker om denne ordboken tilordner ingen nøkler til verdi. Den returnerer sann hvis og bare hvis denne ordboken ikke inneholder noen oppføringer, ellers returnerer den falsk.
offentlig sammendrag Oppregningsnøkler() Den returnerer en oppsummering av nøklene i denne ordboken. Det returnerte enum-objektet genererer alle nøklene som denne ordboken inneholder oppføringer for.
offentlig abstrakt V put(K-nøkkel, V-verdi) Metoden brukes til å sette inn nøkkelverdi-par i ordboken. Den tilordner den angitte nøkkelen til den angitte verdien i denne ordboken. Merk at verken nøkkel eller verdi kan være null.
Hvis ordboken allerede inneholder en oppføring for den angitte nøkkelen, returneres verdien som allerede er i denne ordboken for den nøkkelen, etter at oppføringen er modifisert til å inneholde det nye elementet.
Hvis ordboken ikke allerede har en oppføring for den angitte nøkkelen, opprettes en oppføring for den angitte nøkkelen og verdien, og null returneres.
Den analyserer nøkkel og verdi som en parameter. Den kaster NullPointerException hvis nøkkelen eller verdien er null.
offentlig abstrakt V fjern (objektnøkkel) Metoden analyserer en nøkkel som vi ønsker å fjerne. Den fjerner nøkkelen og tilhørende verdi. Merk at metoden ikke gjør noe hvis nøkkelen ikke er i ordboken. Den kaster NullPointerException hvis nøkkelen er null.
offentlig abstrakt int størrelse() Den returnerer antall oppføringer (distinkte nøkler) i denne ordboken.

Java-ordbok-programmer

Bruk av Dictionary.put()-metoden

Put()-metoden setter inn elementene i ordboken. Følgende program viser 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); } } 

Produksjon:

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

Bruk av Dictionary.size()-metoden

Størrelsen på ordboken er antall elementer ordboken inneholder. I det følgende programmet er størrelsen på ordboken 6.

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

Produksjon:

 The size of the dictionary is: 6 

Bruk av Dictionary.get()-metoden

Ved å bruke get()-metoden kan vi hente verdien til en spesifisert nøkkel.

oracle sql ikke lik

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

Produksjon:

 The value of the specified key is: Melbourne 

Bruk av Dictionary.isEmpty()-metoden

Den returnerer sant hvis ordboken 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()); } } 

Produksjon:

 Is the dictionary empty? false 

Bruk av Dictionary.remove()-metoden

Metoden fjerner nøkkelen og tilsvarende verdi som vi har analysert i metoden. Den fjernede verdien returneres av 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)); } } 

Produksjon:

 The removed value is: Mount Gambier 

Bruk av elementer() og nøkkel()-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()); } } } 

Produksjon:

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 

Forskjellen mellom HashMap og Dictionary Class

Java HashMap klasse og Ordbok-klassen har begge en lignende funksjon. Den eneste forskjellen er det HashMap implementerer kartgrensesnittet mens Dictionary-klassen ikke gjør det . I følge Java-dokumentasjon er Ordbok-klassen ikke lenger i bruk fordi den er utdatert. I stedet for Ordbok-klassen brukes HashMap-klassen. Siden vi kan si at HashMap er en type ordbok.