Java: Konvertieren von HashMap-Werten in SetInteger

8

Noch eine Frage zu HashMap & lt; & gt; in Java:

Ich habe folgendes

%Vor%

Nachdem ich Daten in die Variable myWordDict gespeichert habe, möchte ich die HashMapValues ​​durchlaufen und jeden Wert zu einer neuen Set-Variablen hinzufügen?

Wenn ich Set<Integer> newVariable = myWordDict.entrySet() versuche, scheint der Datentyp inkompatibel zu sein.

Also meine Frage ist im Wesentlichen:

  

Wie konvertiert man HashMap-Werte oder entrySet () in Set?

Danke

    
TonyGW 12.11.2013, 06:12
quelle

9 Antworten

8

Ihre Erklärung sollte wie folgt sein. Es konvertiert Ihre Kartenwerte in Collection

%Vor%     
Masudul 12.11.2013, 06:18
quelle
15

Versuchen Sie:

%Vor%

oder

%Vor%     
Kamlesh Arya 12.11.2013 06:23
quelle
4

Was gibt entrySet zurück?

%Vor%
  

Gibt eine Set-Ansicht der in dieser Map enthaltenen Mappings zurück. Das Set wird durch die Map unterstützt, sodass Änderungen an der Map in der Menge widergespiegelt werden und umgekehrt.

Wenn Sie über die myWordDict Hash-Map iterieren wollen, dann nur

%Vor%

Verwandte Links

Aniket Kulkarni 12.11.2013 06:21
quelle
2

Wenn Sie alle Werte als Set von Integers und nicht als Set von Set benötigen, können Sie so etwas tun

%Vor%

Oder wenn Sie sie als Set von Set wollen, müssen Sie so etwas tun

%Vor%     
SudoRahul 12.11.2013 06:21
quelle
1

verwende myWordDict.values() , nicht myWordDict.entrySet() . values ​​ist eine Menge von values der Karte, wohingegen entrySet eine Menge von Zuordnungen ist (es ist eine Menge von java.util.map.Entry-Objekten, von denen jedes einen Schlüssel und einen Wert beschreibt).

    
ApproachingDarknessFish 12.11.2013 06:17
quelle
1

Wenn Sie davon ausgehen, dass Sie alle Werte aus den Mengen in der Karte hinzufügen möchten, verwenden Sie addAll Methode:

%Vor%     
aga 12.11.2013 06:24
quelle
1
%Vor%     
Rakesh KR 12.11.2013 06:21
quelle
0

Also habe ich einen Iterator entwickelt, um den Wert Set

zu durchlaufen

Ich habe diese Datenstruktur

%Vor%

Ich habe

erstellt %Vor%

Verwenden Sie dann einfach eine while () -Schleife, um einer neuen Set-Variablen einen individuellen Wert hinzuzufügen. Ich bin mir nicht sicher, ob dies der effizienteste Weg ist, aber es funktioniert für meine Bedürfnisse. "

    
TonyGW 12.11.2013 06:25
quelle
0

flatMap wird Ihnen helfen:

%Vor%     
free斩 27.10.2017 07:34
quelle

Tags und Links