Die heutige Erklärung besteht hauptsächlich darin, eine Vielzahl von Möglichkeiten zur Implementierung von Traversal hashmap zu verwenden, um den Schlüssel und den Wert zu entfernen. Wenn Sie möchten, dass eine Sammlung in der Lage ist, die Iteration in Java zu verbessern, muss diese Schnittstelle oder Klasse die iterable Schnittstelle implementieren. Dann wird hier iterable Iteration nicht erklärt. Im Folgenden erklärt sich hauptsächlich den Traversalprozess.
// Definieren Sie eine generische Sammlungskarte <String, String> map = new HashMap <String, String> (); // Daten zur Sammlung über die MAP -Put -Methode -Karte ("001", "liu Bei"); map.put ("002", "cao cao"); map.put ("003", "sun quan");Methode 1: Verwenden Sie die Schlüsseletmethode der Kartenschnittstelle, um sie zu implementieren
FRAGE: Wir alle wissen, dass die Kartenschnittstelle die iterbare Schnittstelle nicht implementiert. Warum kann also mit ihrer Ketset -Methode itereriert werden?
Analyse: Da die Schlüsseletmethode die festgelegte Ansicht des in dieser Karte enthaltenen Schlüssels zurückgibt, kann diese Methode tatsächlich einen festgelegten Versuch zurückgeben, was bedeutet, dass sein Rückgabewerttyp eine festgelegte Schnittstelle ist. Wir können das API -Dokument durchsehen, dass die festgelegte Schnittstelle die iterable Schnittstelle implementiert, damit sie eine Iteration erreichen kann.
// Aufrufen der Schlüsselset -Methode, um einen festgelegten Schnittstellen -Typ -Set <string> set = map.keyset () zurückzugeben; // Verwenden Sie zur Verbesserung, um den Schlüssel und den Wert für (String -Element: set) {System.out.println ("Schlüssel:" + item + "; Wertwert:" + map.get (item)); }Methode 2: Verwenden Sie die Wertemethode der MAP -Schnittstelle zum Implementieren (zur Verbesserung)
Ähnlich: Wenn er die Wertemethode der Kartenschnittstelle aufruft, setzte er einen Sammlungsversuch zurück und wenn die Sammelschnittstelle implementiert ist, ist sie wiederholbar, sodass sie iteriert werden kann.
Sammlung <string> con = map.Values (); für (Zeichenfolgeelement: con) {System.out.println ("Wertwert ist:" + item); }Methode 3: Verwenden Sie die Einstiegsmethode der Kartenschnittstelle zum Implementieren (zur Verbesserung)
Einstiegssatz: Der Rückgabewert von Einstieg () gibt auch eine festgelegte Sammlung zurück. Der Typ dieser Sammlung ist MAP.Entry. Map.Entry ist eine interne Schnittstelle, die von der Karte deklariert wird. Diese Schnittstelle ist eine generische und ist als Eintrag <k, v> definiert. Es repräsentiert eine Entität in der Karte (ein Schlüsselwertpaar).
Setzen Sie <Eintrag <String, String >> setEntry = map.EntrySet (); für (Eintrag <String, String> Element: SetEntry) {System.out.println ("Schlüssel ist:" + item.getKey () + "; Wert ist:" + item.getValue ()); }Methode 4: Verwenden Sie den Keyset (). Iterable () (während Schleife) der Kartenschnittstelle
Iterable (): Gibt einen Iterator zurück, der das Element in diesem Satz iteriert. Die zurückgegebenen Elemente haben keine spezifische Reihenfolge (es sei denn, dieses Satz ist eine Instanz einer Klasse, die Auftragsgarantien bietet). Return Value Typ Iterator <E>
Iterator <string> it = map.keyset (). Iterator (); // return true, wenn es noch Elemente gibt, die iteriert werden können. while (it.hasNext ()) {// den Schlüsselwert String key = it.next () abrufen; System.out.println ("Schlüssel ist:" + key + "; Wert ist:" + map.get (Schlüssel)); } Methode 5: Verwenden Sie den value.iterable () der Kartenschnittstelle (während Schleife)
Iterator <string> it1 = map.Values (). Iterator (); while (it1.hasnext ()) {string value = it1.next (); System.out.println ("Wertwert ist:" + Wert); } Methode 6: Verwenden Sie Eintragset (). Iterable () (während Schleife) der Kartenschnittstelle
Iterator <Eintrag <String, String >> it2 = map.EntrySet (). Iterator (); while (it2.hasnext ()) {Eintrag <String, String> Eintrag = it2.next (); System.out.println ("Schlüssel ist:" + Eintrag.getkey () + "; Wertwert ist:" + Eintrag.getValue ()); }Der obige Artikel verwendet verschiedene Methoden, um HashMap zu durchqueren. Dies ist der gesamte Inhalt, den ich mit Ihnen teile. Ich hoffe, Sie können Ihnen eine Referenz geben und ich hoffe, Sie können wulin.com mehr unterstützen.