Java - La classe HashMap

La classe HashMap utilizza una tabella hash per implementare l'interfaccia Map. Ciò consente al tempo di esecuzione delle operazioni di base, come get () e put (), di rimanere costante anche per insiemi di grandi dimensioni.

Di seguito è riportato l'elenco dei costruttori supportati dalla classe HashMap.

Sr.No. Costruttore e descrizione
1

HashMap( )

Questo costruttore costruisce una HashMap predefinita.

2

HashMap(Map m)

Questo costruttore inizializza la mappa hash utilizzando gli elementi dell'oggetto Map specificato m.

3

HashMap(int capacity)

Questo costruttore inizializza la capacità della mappa hash sul valore intero specificato, capacità.

4

HashMap(int capacity, float fillRatio)

Questo costruttore inizializza sia la capacità che il rapporto di riempimento della mappa hash usando i suoi argomenti.

Oltre ai metodi ereditati dalle sue classi genitore, HashMap definisce i seguenti metodi:

Sr.No. Metodo e descrizione
1

void clear()

Rimuove tutte le mappature da questa mappa.

2

Object clone()

Restituisce una copia superficiale di questa istanza HashMap: le chiavi e i valori stessi non vengono clonati.

3

boolean containsKey(Object key)

Restituisce vero se questa mappa contiene una mappatura per la chiave specificata.

4

boolean containsValue(Object value)

Restituisce vero se questa mappa mappa una o più chiavi sul valore specificato.

5

Set entrySet()

Restituisce una vista della raccolta delle mappature contenute in questa mappa.

6

Object get(Object key)

Restituisce il valore a cui è mappata la chiave specificata in questa mappa hash dell'identità o null se la mappa non contiene alcuna mappatura per questa chiave.

7

boolean isEmpty()

Restituisce vero se questa mappa non contiene mappature valore-chiave.

8

Set keySet()

Restituisce una vista dell'insieme delle chiavi contenute in questa mappa.

9

Object put(Object key, Object value)

Associa il valore specificato alla chiave specificata in questa mappa.

10

putAll(Map m)

Copia tutte le mappature dalla mappa specificata a questa mappa. Queste mappature sostituiranno tutte le mappature che questa mappa aveva per una qualsiasi delle chiavi attualmente nella mappa specificata.

11

Object remove(Object key)

Rimuove la mappatura per questa chiave da questa mappa, se presente.

12

int size()

Restituisce il numero di mappature valore-chiave in questa mappa.

13

Collection values()

Restituisce una vista della raccolta dei valori contenuti in questa mappa.

Esempio

Il seguente programma illustra molti dei metodi supportati da questa raccolta:

import java.util.*;
public class HashMapDemo {

   public static void main(String args[]) {
   
      // Create a hash map
      HashMap hm = new HashMap();
      
      // Put elements to the map
      hm.put("Zara", new Double(3434.34));
      hm.put("Mahnaz", new Double(123.22));
      hm.put("Ayan", new Double(1378.00));
      hm.put("Daisy", new Double(99.22));
      hm.put("Qadir", new Double(-19.08));
      
      // Get a set of the entries
      Set set = hm.entrySet();
      
      // Get an iterator
      Iterator i = set.iterator();
      
      // Display elements
      while(i.hasNext()) {
         Map.Entry me = (Map.Entry)i.next();
         System.out.print(me.getKey() + ": ");
         System.out.println(me.getValue());
      }
      System.out.println();
      
      // Deposit 1000 into Zara's account
      double balance = ((Double)hm.get("Zara")).doubleValue();
      hm.put("Zara", new Double(balance + 1000));
      System.out.println("Zara's new balance: " + hm.get("Zara"));
   }
}

Questo produrrà il seguente risultato:

Produzione

Daisy: 99.22
Ayan: 1378.0
Zara: 3434.34
Qadir: -19.08
Mahnaz: 123.22

Zara's new balance: 4434.34