În Java, Dicţionar este lista de perechi cheie-valoare. Putem stoca, prelua, elimina, obține și pune valori în dicționar folosind clasa Java Dictionary. În această secțiune, vom discuta despre Java Dicţionar clasă care stochează date în perechi cheie-valoare la fel ca interfața Map.
procesare de hacking
Dicţionar Java Class
Java Dicţionar clasa este o clasă abstractă clasă părinte a oricărei clase. Apartine java.util pachet. Subclasa sa direct cunoscută este Hashtable clasă. La fel ca și clasa Hashtable, mapează cheile la valori. Rețineți că fiecare cheie și valoare este un obiect și orice obiect non-null poate fi folosit ca cheie și ca valoare. Ierarhia clasei Dicționar este următoarea:
Fiecare cheie este asociată cu cel mult o valoare, așa cum se arată în figura următoare. Odată ce valoarea este stocată într-un obiect dicționar, o putem prelua folosind cheia.
Sintaxă:
public abstract class Dictionary extends Object
Notă: clasa este învechită. Deci, implementați interfața hărții în loc să extindeți clasa.
Dicţionar Class Constructor
Clasa are doar un constructor numit a unic constructor.
Sintaxă:
public Dictionary()
Dicţionar Class Methods
Toate metodele clasei Dicționar sunt abstract . Următorul tabel descrie metodele.
Metodă | Descriere |
---|---|
abstract public Elemente de enumerare() | Returnează o enumerare a valorilor din acest dicționar. Obiectul enumerare returnat generează toate elementele conținute în intrările din acest dicționar. |
abstract public V get(cheie obiect) | Returnează valoarea la care este mapată cheia în acest dicționar. Analizează un obiect (cheie) din acest dicționar. Rețineți că dacă acest dicționar conține o intrare pentru cheia specificată, valoarea asociată este returnată; în caz contrar, este returnat null. Aruncă NullPointerException dacă cheia este nulă. |
boolean abstract public isEmpty() | Metoda verifică dacă acest dicționar mapează nicio cheie la valoare. Returnează adevărat dacă și numai dacă acest dicționar nu conține intrări, altfel returnează false. |
chei de enumerare abstracte publice() | Returnează o enumerare a cheilor din acest dicționar. Obiectul enumerare returnat generează toate cheile pentru care acest dicționar conține intrări. |
public abstract V put (cheie K, valoare V) | Metoda este folosită pentru a insera perechea cheie-valoare în dicționar. Mapează cheia specificată la valoarea specificată în acest dicționar. Rețineți că nici cheia, nici valoarea nu pot fi nule. Dacă dicționarul conține deja o intrare pentru cheia specificată, valoarea deja din acest dicționar pentru acea cheie este returnată, după modificarea intrării pentru a conține noul element. Dacă dicționarul nu are deja o intrare pentru cheia specificată, este creată o intrare pentru cheia și valoarea specificate și este returnat null. Analizează cheia și valoarea ca parametru. Aruncă NullPointerException dacă cheia sau valoarea este nulă. |
abstract public V remove (cheie obiect) | Metoda analizează o cheie pe care dorim să o eliminăm. Îndepărtează cheia și valoarea asociată. Rețineți că metoda nu face nimic dacă cheia nu este în dicționar. Aruncă NullPointerException dacă cheia este nulă. |
public abstract int size() | Returnează numărul de intrări (chei distincte) din acest dicționar. |
Programe de dicționar Java
Utilizarea metodei Dictionary.put().
Metoda put() inserează elementele în dicționar. Următorul program demonstrează același lucru.
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); } }
Ieșire:
{108=Canberra, 107=Nelson Bay, 106=Mount Gambier, 105=Lismore, 104=Perth, 103=Melbourne, 102=Brisbane, 101=Sydney}
Utilizarea metodei Dictionary.size().
Mărimea dicționarului este numărul de elemente pe care le conține dicționarul. În următorul program, dimensiunea dicționarului este 6.
DictionarySizeExample.java
listă dublu legată
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()); } }
Ieșire:
The size of the dictionary is: 6
Utilizarea metodei Dictionary.get().
Folosind metoda get(), putem prelua valoarea unei chei specificate.
DicţionarGetElement.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)); } }
Ieșire:
The value of the specified key is: Melbourne
Utilizarea metodei Dictionary.isEmpty().
Returnează adevărat dacă dicționarul este gol, altfel returnează false.
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()); } }
Ieșire:
Is the dictionary empty? false
Utilizarea metodei Dictionary.remove().
Metoda elimină cheia și valoarea corespunzătoare pe care le-am analizat în metodă. Valoarea eliminată este returnată de metodă.
declarația if-else java
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)); } }
Ieșire:
The removed value is: Mount Gambier
Utilizarea metodelor elements() și 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()); } } }
Ieșire:
Dictionary values are: Canberra Nelson Bay Mount Gambier Lismore Perth Melbourne Brisbane Sydney Dictionary keys are: 108 107 106 105 104 103 102 101
Diferența dintre clasa HashMap și Dicționar
Java HashMap clasa și clasa Dicționar îndeplinesc ambele o funcție similară. Singura diferență este că HashMap implementează interfața Map în timp ce clasa Dicționar nu o face . Conform documentației Java, clasa Dicționar nu mai este utilizată deoarece este depășită. În loc de clasa Dicționar, se folosește clasa HashMap. Din moment ce putem spune că HashMap este un tip de dicționar.