In Java, un hashset è un set. Mentre un set sarebbe un insieme di numeri interi, o di galleggianti o stringhe, ecc., L'hashset sarebbe un insieme di coppie. In Java corretto, una coppia è un'entry di mappa che può essere creata indipendentemente dalla struttura dei dati simile a una mappa di destinazione. Una mappa-entry o una coppia è un codice con una chiave e il suo valore corrispondente. La chiave viene effettivamente eseguita in un indice di array per il valore.
Di seguito sono riportati un esempio di coppie di tasti/valore in cui una chiave è un nome di frutta e il valore corrispondente è il colore esterno della frutta:
passione frutto => violaQuesto articolo fornisce la conoscenza di base di Java Hashset, a partire dalla creazione di una coppia (voce della mappa).
Creazione di una mappa
Una sintassi per creare una mappa-entry (coppia) è:
Public SimpleEntry (K Key, V Value)Questo è della mappa astratta.Classe di semplicità, del pacchetto, Java.util.*, che deve essere importato. K è il tipo di chiave, che in questo caso è una stringa. V è il tipo di valore, che in questo caso è ancora una stringa.
Il seguente segmento di codice crea cinque coppie:
AbstractMap.SempliceQueste cinque coppie possono formare cinque elementi di un hashset.
Costruire un hashset
Ci sono quattro costruttori sovraccarichi per l'hashset, ma solo due sono illustrati in questo articolo.
public hashset ()
Questo crea un hashset vuoto. Un hashset vuoto per le coppie sopra può essere creata come segue:
HashsetQuesto richiede un altro hashset come argomento per creare un nuovo hashset. Un'affermazione del codice di esempio di un hashset creato da un altro hashset è:
Hashsetdove hs è un hashset già creato.
La classe Hashset è anche nel Java.util.* pacchetto, che dovrebbe essere importato.
Metodi dell'hashset
I metodi comunemente usati della classe hashset sono spiegati in questa sezione.
Public Boolean Add (e e)
Questo aggiunge una nuova coppia (elemento) all'hashset. Restituisce vero se questo set non contiene già l'elemento specificato; falso altrimenti. Il seguente segmento di codice aggiunge i cinque elementi sopra (coppie) all'hashset, HS:
Hashsetpublic int size ()
Questo restituisce il numero di coppie (elementi) nel set. Esempio:
int sz = hs.misurare();Per questo codice, il valore di ritorno sarebbe 5.
iterator iteratore pubblico ()
Un iteratore è un oggetto che può essere utilizzato per accedere a tutti gli elementi di un set (o elenco), uno per uno. La seguente dichiarazione restituisce un iteratore da Hashset sopra:
IteratoreL'iteratore ha il metodo,
E Next ()Questo metodo di iteratore restituisce l'elemento successivo a partire dal primo, nel set (o nell'elenco). Gli elementi restituiti non sono necessariamente nell'ordine in cui sono stati aggiunti. Per restituire l'elemento successivo dell'hashset sopra, è possibile utilizzare la seguente istruzione:
AbstractMap.SempliceA sinistra dell'operatore di assegnazione, c'è un nome di un programmatore deciso per una coppia (mappa-entry), coppia, preceduta dal tipo di coppia. A destra, è l'iteratore, ottenuto sopra, seguito dal metodo, Next (). Dopo aver restituito la coppia, i metodi dell'elenco possono quindi essere utilizzati per gestire la coppia.
La mappa astratta della classe.SimpleEntry, per la coppia, ha il metodo, toString (). Questo metodo restituisce sia la chiave che il valore in forma di stringa. Il seguente segmento di codice, stampa tutte le coppie chiave/valore dell'hashset sopra utilizzando l'iteratore:
per (int i = 0; iL'output è:
Papaya = OrangeIl metodo separa la chiave dal valore con =.
Public Boolean Rimuove (Object O)
Questo rimuove un elemento (coppia) che il programmatore già sa, dovrebbe essere presente nell'hashset. Restituisce vero, se si è verificata un cambiamento; e falso altrimenti. Sia l'iterazione che le classi hashset hanno questo metodo (leggermente diverso). Il seguente segmento di codice accede a tutti gli elementi nell'hashset e rimuove "Watermelon = Green".
per (int i = 0; iL'output è 4. È stato utilizzato il metodo Rimuovi () dell'iteratore e non quello dell'hashset. La coppia (elemento) si stava indicando l'iteratore è stata rimossa.
public void clear ()
Questo rimuove tutti gli elementi dall'hashset. Il seguente segmento di codice illustra questo:
hs.chiaro();L'output è 0.
pubblico booleano isEmpty ()
Restituisce vero, se l'hashset non contiene alcun elemento e falso altrimenti. Il seguente codice lo illustra per un set non vuoto:
booleano bl = hs.è vuoto();L'output è falso.
Booleano contiene (oggetto O)
Questo restituisce vero, se l'hashset contiene l'elemento indicato (coppia); e falso altrimenti. Il seguente segmento di codice lo illustra per un hashset che ha già elementi:
AbstractMap.SemplicePer l'hashset di cui sopra, l'output è vero.
Conclusione
L'hashset in Java è un set. Tuttavia, differisce da un set normale, in quanto, i suoi elementi dovrebbero essere coppie. Una coppia è un codice elemento, che ha una chiave e il suo valore corrispondente. La chiave viene hash di un indice di array per il valore. La seguente dichiarazione creerebbe un hashset vuoto:
HashsetHS è il nome dell'hashset.
In java corretto, una coppia è un'entry di mappa. La seguente affermazione creerebbe un'entry di mappa:
AbstractMap.SempliceIl tipo di chiave qui è una stringa e il tipo di valore qui è anche una stringa.
La classe Java Hashset ha alcuni metodi utili che sono stati spiegati sopra.