Wie listet ich die Schlüssel und Werte einer Hashtable auf?

7

Ich habe ein Problem; Ich habe ein paar Daten und ich zeige es mit Hashtable zum Beispiel schreibe ich:

%Vor%

aber es zeigt mir nur Werte wie kann ich Werte und Tasten zusammen zeigen? zum Beispiel das

wenn mein Schlüssel "A" ist und mein Wert ist "B" zeig mir das:

%Vor%

Danke ...

    
Freeman 07.02.2010, 07:38
quelle

3 Antworten

7

Sie haben den Schlüssel richtig? Verwenden Sie den Schlüssel, um den Wert aus der Zuordnung abzurufen, und Sie haben alle Zuordnungen. Zum Beispiel in Java mit String als Typ für key:

%Vor%

.

    
crunchdog 07.02.2010, 07:49
quelle
18

Hashtable implementiert Map . Die Funktion Map.entrySet gibt eine Sammlung zurück ( Set ) von Map.Entry Instanzen, die getKey und getValue Methoden haben.

Also:

%Vor%

Wenn Sie die Typen der Einträge in der Hashtable kennen, können Sie Vorlagen verwenden, um die oben genannten Aufrufe toString zu eliminieren. Zum Beispiel könnte entry als Map.Entry<String,String> deklariert werden, wenn Ihre Hashtabelle als Hashtable<String,String> deklariert ist.

Wenn Sie Vorlagen mit Generika kombinieren können, ist es ausgesprochen kurz:

%Vor%

Das geht von yourTable ist ein Hashtable<String,String> . Zeigt nur, wie weit Java in den letzten Jahren gekommen ist, ohne seine essentielle Java-Fähigkeit zu verlieren.

Leicht OT: Wenn Sie die Synchronisation nicht benötigen, verwenden Sie HashMap anstelle von Hashtable . Wenn Sie dies tun, verwenden Sie eine ConcurrentHashMap (danke, akappa!).

    
T.J. Crowder 07.02.2010 07:50
quelle
1

entrySet () liefert eine Aufzählung der Werte in der Hashtabelle.
keySet () gibt eine Aufzählung der Schlüssel in der Hashtabelle zurück.
entrySet () gibt die Einträge (Schlüssel und Wert) als Set

zurück %Vor%

oder mit Generics, in diesem Fall ist Ihr Hash eine HashMap & lt; String, String & gt;

%Vor%     
Lachlan Roche 07.02.2010 07:46
quelle

Tags und Links