logo

Szótár osztály Java nyelven

Java nyelven, Szótár a kulcs-érték párok listája. A Java Dictionary osztály használatával értékeket tárolhatunk, lekérhetünk, eltávolíthatunk, beszerezhetünk és elhelyezhetünk a szótárban. Ebben a részben a Jáva Szótár osztály, amely kulcs-érték párokban tárolja az adatokat, akárcsak a Map felület.

Java szótár osztály

Jáva Szótár osztály bármely osztály absztrakt osztályának szülőosztálya. hozzátartozik java.util csomag. Közvetlenül ismert alosztálya a Hashtable osztály. A Hashtable osztályhoz hasonlóan ez is leképezi a kulcsokat az értékekre. Vegye figyelembe, hogy minden kulcs és érték objektum, és minden nem nulla objektum használható kulcsként és értékként. A szótár osztályhierarchiája a következő:

Szótár osztály Java nyelven

Minden kulcshoz legfeljebb egy érték tartozik, ahogy az a következő ábrán látható. Miután az értéket egy szótárobjektumban tároltuk, a kulcs használatával lekérhetjük.

Szótár osztály Java nyelven

Szintaxis:

 public abstract class Dictionary extends Object 

Megjegyzés: Az osztály elavult. Tehát az osztály kiterjesztése helyett valósítsa meg a térképi felületet.

Szótár osztálykészítő

Az osztálynak csak egy a nevű konstruktora van egyetlen konstruktőr.

mysql lista felhasználók

Szintaxis:

karakterlánc átalakítása int-re
 public Dictionary() 

Szótári osztálymódszerek

A Dictionary osztály összes metódusa az absztrakt . Az alábbi táblázat a módszereket írja le.

Módszer Leírás
public abstract Enumeration elements() A szótárban szereplő értékek felsorolását adja vissza. A visszaadott enum objektum előállítja a szótár bejegyzéseiben található összes elemet.
nyilvános absztrakt V get (objektumkulcs) Azt az értéket adja vissza, amelyhez a kulcs le van rendelve ebben a szótárban. Elemez egy objektumot (kulcsot) ebben a szótárban. Vegye figyelembe, hogy ha ez a szótár tartalmaz egy bejegyzést a megadott kulcshoz, akkor a rendszer a kapcsolódó értéket adja vissza; ellenkező esetben null értéket ad vissza. NullPointerExceptiont dob, ha a kulcs nulla.
nyilvános absztrakt logikai érték isEmpty() A módszer ellenőrzi, hogy ez a szótár nem képez-e le kulcsokat az értékhez. Akkor és csak akkor ad vissza igazat, ha ez a szótár nem tartalmaz bejegyzéseket, egyébként hamis értéket ad vissza.
nyilvános absztrakt Felsorolási kulcsok() A szótár kulcsainak egy sorszámát adja vissza. A visszaadott enum objektum előállítja az összes kulcsot, amelyhez ez a szótár bejegyzéseket tartalmaz.
nyilvános absztrakt V put(K kulcs, V érték) A módszer a kulcs-érték pár beillesztésére szolgál a szótárba. A megadott kulcsot leképezi a szótárban megadott értékre. Vegye figyelembe, hogy sem a kulcs, sem az érték nem lehet nulla.
Ha a szótár már tartalmaz egy bejegyzést a megadott kulcshoz, akkor a szótárban már az adott kulcshoz tartozó érték kerül visszaadásra, miután módosította a bejegyzést, hogy tartalmazza az új elemet.
Ha a szótárban még nincs bejegyzés a megadott kulcshoz, akkor a megadott kulcshoz és értékhez bejegyzés jön létre, és nulla értéket ad vissza.
Paraméterként elemzi a kulcsot és az értéket. NullPointerExceptiont dob, ha a kulcs vagy az érték null.
nyilvános absztrakt V eltávolítás (objektumkulcs) A metódus elemzi az eltávolítani kívánt kulcsot. Eltávolítja a kulcsot és a hozzá tartozó értéket. Vegye figyelembe, hogy a metódus nem csinál semmit, ha a kulcs nincs a szótárban. NullPointerExceptiont dob, ha a kulcs nulla.
publikus absztrakt int méret() A szótár bejegyzéseinek (különböző kulcsainak) számát adja vissza.

Java szótár programok

A Dictionary.put() metódus használata

A put() metódus beszúrja az elemeket a szótárba. A következő program ugyanezt mutatja be.

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

Kimenet:

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

A Dictionary.size() módszer használata

A szótár mérete a szótár elemeinek száma. A következő programban a szótár mérete 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()); } } 

Kimenet:

bash ellenőrizze, hogy a környezeti változó be van-e állítva
 The size of the dictionary is: 6 

A Dictionary.get() metódus használata

A get() metódus használatával lekérhetjük egy megadott kulcs értékét.

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

Kimenet:

 The value of the specified key is: Melbourne 

A Dictionary.isEmpty() metódus használata

Igazat ad vissza, ha a szótár üres, egyébként hamis értéket ad vissza.

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

Kimenet:

centos vs redhat
 Is the dictionary empty? false 

A Dictionary.remove() metódus használata

A metódus eltávolítja a metódusban elemzett kulcsot és a megfelelő értéket. Az eltávolított értéket a metódus adja vissza.

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

Kimenet:

 The removed value is: Mount Gambier 

Az elements() és key() metódusok használata

RemoveElementExample.java

karakterlánc egész számmá alakítása
 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()); } } } 

Kimenet:

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

A HashMap és a Dictionary osztály közötti különbség

A Java HashMap osztály és a Szótár osztály egyaránt hasonló funkciót lát el. Az egyetlen különbség az A HashMap megvalósítja a Map Interface-t, míg a Dictionary osztály nem . A Java dokumentáció szerint a Dictionary osztály már nincs használatban, mert elavult. A Dictionary osztály helyett a HashMap osztályt használjuk. Mivel azt mondhatjuk, hogy a HashMap egyfajta szótár.