Come creare un semplice dizionario con Java
Il dizionario è una classe astratta, che rappresenta una relazione chiave-valore e funziona in modo simile a una mappa. Sia le chiavi che i valori possono essere oggetti di qualsiasi tipo ma non nulli. Un tentativo di inserire una chiave o un valore nullo in un dizionario causa un'eccezione NullPointerException. Pertanto, è obbligatorio fornire un valore non nullo sia per le chiavi che per i valori.Dictionary è un tipo generico.Mentre si eseguono operazioni Dictionary è più veloce perché non c'è boxing/unboxing (valuetypes don't need boxing).Dictionary non c'è sicurezza dei thread, se avete bisogno di sicurezza dei thread dovete implementare la vostra sincronizzazione.
Simple Example:
- public class DictionaryAllMethods2 {
- public static void main(String[] args) {
- // Initializing a Dictionary
- Dictionary d = new Hashtable();
- // put() method
- d.put("1", "Java");
- d.put("2", "Programming");
- d.put("3","Language");
- // elements() method :
- Enumeration v = d.elements();
- while(v.hasMoreElements()){
- System.out.println("Value in Dictionary :"+v.nextElement());
- }
- }
- }
Output:
- Value in Dictionary :Language
- Value in Dictionary :Programming
- Value in Dictionary :Java
Methods in Dictionary:
Method Description
V put(K key, V value) : adds key-value pair to the dictionary.
Enumeration elements() : returns value representation in dictionary.
V get(Object key) : returns the value that is mapped with the argumented key in the dictionary.
boolean isEmpty() : checks whether the dictionary is empty or not.
Enumeration keys() : returns key representation in dictionary.
V remove(Object key) : removes the key-value pair mapped with the argumented key.
int size() : returns the no. of key-value pairs in the Dictionary.
Example:
- public class DictionaryMethodsDemo {
- public static void main(String[] args) {
- // Initializing a Dictionary
- Dictionary d = new Hashtable();
- // put() method
- d.put("1", "Java");
- d.put("2", "Programming");
- d.put("3","Language");
- // elements() method :
- Enumeration v = d.elements();
- while(v.hasMoreElements()){
- System.out.println("Value in Dictionary :"+v.nextElement());
- }
- //size() method
- System.out.println("\nSize of Dictionary : " + d.size());
- // get() method :
- System.out.println("Value at key = 2 : " + d.get("2"));
- // isEmpty() method :
- System.out.println("\nThere is no key-value pair : " + d.isEmpty() + "\n");
- // keys() method :
- Enumeration k = d.keys();
- while(k.hasMoreElements()){
- System.out.println("Keys in Dictionary : " + k.nextElement());
- }
- // remove() method :
- System.out.println("\nRemove : " + d.remove("1"));
- System.out.println("Check the value of removed key : " + d.get("1"));
- // remove() method :
- d.remove("2");
- d.remove("3");
- // isEmpty() method :
- System.out.println("\nThere is no key-value pair : " + d.isEmpty() + "\n");
- }
- }
Output:
- Value in Dictionary :Language
- Value in Dictionary :Programming
- Value in Dictionary :Java
- Size of Dictionary : 3
- Value at key = 2 : Programming
- There is no key-value pair : false
- Keys in Dictionary : 3
- Keys in Dictionary : 2
- Keys in Dictionary : 1
- Remove : Java
- Check the value of removed key : null
- There is no key-value pair : true