Java HashTable-Beispiel

Bei einem Sammlungsframework handelt es sich um Sammlungen von Schnittstellen, Implementierungen und Algorithmen, die zum Speichern, Abrufen und Bearbeiten der Daten verwendet werden. In der Version von Java 1.0, Hash-tabelle wurde dort eingeführt, wo keine Karte verwendet wurde. Diese Version wurde in Java 1.2 aktualisiert, um die Map-Schnittstelle zu implementieren und sie als Teil des Java Collections-Frameworks zu machen.

Hash-tabelle ist ein Listenarray, das verwendet wird, um die Informationen synchronisierter zu speichern. Es verwendet die Schlüssel-Wert-Paare, um die Informationen in einer Tabelle zu speichern. Um ein Element in der Hash-Tabelle zu finden, wird das erste Objekt angegeben, das als Schlüssel verwendet wird. Der Schlüssel wird dann gehasht, wodurch ein Index generiert wird, an dem der Wert in der Tabelle gespeichert wird.

Hash-tabelle kann nur die Objekte speichern, die sowohl die hashcode()- als auch die equal()-Methode implementieren können. Wenn ein Schlüssel gehasht wird, generiert er den Hash-Code, der einen Index in der Tabelle generiert, an dem der Wert gespeichert wird. Die Methode equal() vergleicht die beiden Objekte. Beispielsweise implementiert String sowohl die Methode hashcode() als auch equal().

lesen Sie auch:

  • Unterschied zwischen ArrayList, Vector und LinkedList in Java
  • Anmerkungen in Java 5.0

HashTable-Funktionen

  • Die Hash-Tabelle speichert die Informationen synchronisierter.
  • Die Hash-Tabelle erlaubt keine Duplizierung von Werten. Es kann einem Schlüssel nur einen Wert zuordnen.
  • Es kann kein Nullschlüssel oder Nullwert gespeichert werden.
  • Gilt nur für Objekte, die sowohl die hashcode()- als auch die equal()-Methode implementieren können.
  • Jede Hashing-Funktion generiert einen Hash-Code, der einen Index in der Tabelle angibt, an dem der Wert gespeichert wird.

HashTable-Syntax

class Hashtable<K, V>
  • Dabei gibt K den Typ des Schlüsselelements und V den Typ des Wertelements an.
  • Wir können HashTable wie folgt erstellen, wobei der Schlüsseltyp eine Zeichenfolge und der Wert des Schlüssels eine Ganzzahl ist.
HashTable<String, Integer> ht=new HashTable<String, Integer> () ;

HashTable-Konstruktoren

Konstruktorbeschreibung

Hash-tabelle ( )Es ist ein Standardkonstruktor.
HashTable (int-Größe)Es erstellt eine Hash-Tabelle der angegebenen Größe. Die Standardgröße der Hash-Tabelle beträgt 11.
HashTable (int size, float fillRatio)Es erstellt eine Hash-Tabelle mit der angegebenen Größe und dem angegebenen fillRatio. Dieses Verhältnis muss zwischen 0,0 und 1,0 liegen.
HashTable (Map m)Es erstellt eine Hash-Tabelle, die mit Elementen in m initialisiert wird.

HashTable-Methoden

Methodenbeschreibung

leer klar ( )setzt alle Schlüssel-Wert-Paare aus der HashTable zurück und entfernt sie.
Objektklon ( )Es erstellt den flachen Klon des Objekts. Das heißt, es wird ein Klon des Objekts erstellt, jedoch nicht der Werte.
Boolean enthält (Objektwert)Boolescher Wert liefert entweder ein wahres oder ein falsches Ergebnis. Wenn der Wert des Objekts in der Hash-Tabelle vorhanden ist, wird „true“ zurückgegeben. Wenn der Wert des Objekts nicht vorhanden ist, wird „false“ zurückgegeben.
Boolean enthältKey (Objektschlüssel)Boolescher Wert liefert entweder ein wahres oder ein falsches Ergebnis. Es gibt „true“ zurück, wenn der Schlüssel mit dem vorhandenen Schlüssel in der Hash-Tabelle übereinstimmt, andernfalls wird „false“ zurückgegeben.
Boolescher Wert enthältWert (Objektwert)Boolescher Wert liefert entweder ein wahres oder ein falsches Ergebnis. Es gibt den Wert „true“ zurück, wenn der Wert mit dem in der Hash-Tabelle vorhandenen Wert übereinstimmt, und den Wert „false“, wenn der Wert nicht gefunden wird
AufzählungselementeEs ermöglicht den Zugriff auf jeweils nur einzelne Elemente in der Hash-Tabelle. Um auf das nächste Element aus der Hash-Tabelle zuzugreifen, wird die Methode nextElement () verwendet.
Objekt get(Objektschlüssel)Diese Methode gibt das Objekt zurück, wenn der dem Objekt zugeordnete Wert mit dem Schlüssel übereinstimmt.
Boolean isEmpty()Wenn das Schlüssel-Wert-Paar nicht in der Hash-Tabelle vorhanden ist, wird „true“ zurückgegeben, was bedeutet, dass die Hash-Tabelle leer ist.
Aufzählungsschlüssel()Es erstellt die aufgezählten Schlüssel in der Hash-Tabelle.
Objekt-Put (Objektschlüssel, Objektwert)Um das Schlüssel-Wert-Paar in die Hash-Tabelle einzufügen, wird diese Methode verwendet. Es gibt den vorherigen Wert zurück, der dem Schlüssel zugeordnet ist, wenn der Schlüssel bereits in der Tabelle vorhanden ist, andernfalls wird ein Nullwert zurückgegeben.
Objectremove(Objektschlüssel)Diese Methode entfernt den Schlüssel und seinen Wert aus der Hash-Tabelle.
int size()Es gibt die Anzahl der Schlüsselwertpaare in der Hash-Tabelle zurück.
String zu StringEs gibt Zeichenfolgenwerte der Hash-Tabelle zurück.

Einfaches Beispiel für HashTable

package hash_table;

import java.util.Hashtable;
import java.util.Enumeration;

public class Update_hash {
public static void main(String[] args) {

	Hashtable<String, String> ht = new Hashtable<String, String>();
		ht.put("player 1", "sachin");
		ht.put("player 2", "sehwag");
		ht.put("player 3", "dhoni");

		Enumeration<String> values = ht.keys();
		while (values.hasMoreElements()) {
		String str = (String) values.nextElement();
		System.out.println(str + ":" + ht.get(str));

	}
   }
}
  • Hashtable ht = new Hashtable(); Zeile erstellt die Instanz ht der Hash-Tabelle, die das Schlüssel-Wert-Paar vom Typ String akzeptiert.
  • ht.put („Spieler 1“, „Sachin“); fügt die Schlüssel-Wert-Paare in die Tabelle ein. Hier key=“player1“ und value=“sachin“. Ebenso werden die beiden anderen Schlüsselwertpaare in die Hash-Tabelle eingefügt.
  • Aufzählungswerte = ht.keys(); Erstellt den Enum-Typ für key , der den Zugriff auf jeweils nur einen Schlüssel ermöglicht.
  • String str = (String) Values.nextElement(); Da der Enum-Typ für den Schlüssel definiert ist, wird mit dieser Methode auf das nächste Element aus der Hash-Tabelle zugegriffen.
  • System.out.println(str + „:“ + ht.get(str)); Die Anweisung gibt das Ergebnis auf dem Ausgabebildschirm aus.

Wenn Sie das obige Beispiel ausführen, erhalten Sie die folgende Ausgabe:

Beispiel für eine einfache Java-HashTable

Beispiel mit HashTable-Methoden

Im folgenden Beispiel haben wir die Verwendung einiger HashTable-Methoden gezeigt Größe, Klon, entfernen, klar Und leer.

package hash_table;

import java.util.Hashtable;

public class hashtable_methods {
	@SuppressWarnings("unchecked")
	public static void main(String[] args) {
	Hashtable<String, String> ht = new Hashtable<String, String>();
		ht.put("player 1", "sachin");
		ht.put("player 2", "sehwag");
		ht.put("player 3", "dhoni");

	System.out.println("Size of the table: "+ ht.size());
Hashtable<String, String> htclone = new Hashtable<String, String>();
	htclone=(Hashtable<String, String>)ht.clone();
	System.out.println("Clone of the table: "+ ht);
	System.out.println("Before removing: "+ ht);
	ht.remove("player 2");
	System.out.println("After removing: "+ ht);
       ht.clear();
       System.out.println("Table elements after clear: "+ ht);
       boolean data=ht.isEmpty();
       System.out.println("Is hash table empty: " + data );
	}
}
  • ht.size (); gibt die Größe der Tabelle zurück, wobei ht die Instanz der HashTable ist.
  • ht.clone(); erstellt den Klon der Tabelle.
  • ht.remove(“Spieler 2”); Entfernt den angegebenen Schlüsselwert aus der HashTable.
  • ht.clear();löscht den Inhalt der HashTable.
  • boolean data=ht.isEmpty(); gibt an, ob HashTable leer ist oder nicht. In diesem Fall wird true zurückgegeben, da Hashtable leer ist.

Wenn Sie das obige Beispiel ausführen, erhalten Sie die folgende Ausgabe:

Beispiel für Java HashTable-Methoden

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen