Ich weiß HashMap in Liste konvertieren kann von List<String> list = new ArrayList<>(hashMap.values());
durchgeführt werden, aber wie wäre es mit HashMap von HashMap? Wie kann man es in ArrayList<ArrayList<String>>
konvertieren?
Meine Idee ist bisher List<List<String>> list = new ArrayList(hashMap.values());
, aber wie innere HashMap in Liste mit/ohne Iterate konvertieren?Konvertieren HashMap von HashMap in ArrayList von ArrayList
2
A
Antwort
1
Für Nicht-Java-8 können Sie verwenden
1.) Fetch Eintrag Gruppe von Ihrem hashMapOfMaps
2.) hashMapOfMaps.getValue()
wird retrun
HashMap<String, String>
und dann .values()
die String
Werte der inneren Karte zurückgeben
for (Entry<String, HashMap<String, String>> entry: hashMapOfMaps.entrySet()) {
listOfLists.add(new ArrayList<String>(entry.getValue().values()));
} | |
inner-Map |
|
inner-Map's string values
2
map.values().stream() // a stream of Map<String, String>
.map(innerMap -> new ArrayList<>(innerMap.values()) // a stream of List<String>
.collect(Collectors.toList()); // List of List<String>
Natürlich verlieren Sie alle wichtigen Informationen.
0
Da Sie dies auf Android wollen Sie möglicherweise nicht Java 8 Streams verwenden möchten. Hier für JDK 7
HashMap<String, HashMap<String, String>> mapOpfMap = new HashMap<>();
List<List<String>> listOfList = new ArrayList<>();
Iterator<Map.Entry<String, HashMap<String, String>>> it = mapOpfMap.entrySet().iterator();
while(it.hasNext()){
Map.Entry<String, HashMap<String, String>> value = it.next();
value.getKey(); // here is the key if you need it
listOfList.add(new ArrayList<>(value.getValue().values()));
}
Verwandte Themen
- 1. Konvertieren von HashMap in ArrayList
- 2. Verwenden von ArrayList oder HashMap
- 3. Eine HashMap in einer ArrayList von HashMap durchsuchen
- 4. Java HashMap Arraylist
- 5. Servlet Arraylist und HashMap
- 6. Wie man eine ArrayList von HashMap iteriert
- 7. HashMap kann nicht auf Arraylist
- 8. Wie hashmap in ArrayList in C++ hinzufügen?
- 9. HashMap in Arraylist Anzeige auf Listview Android
- 10. durch eine Arraylist in einer HashMap Iterieren
- 11. lesen Excel mit Apache Poi - HashMap, Arraylist
- 12. LinkedHashMap vs HashMap! = LinkedList vs ArrayList
- 13. Speichern und Abrufen von hashmap-Werten von ArrayList?
- 14. Drucken einer ArrayList <HashMap>
- 15. Zugriff auf ein hashmap-Keyset mit Arraylist
- 16. Java ArrayList und HashMap on-the-fly
- 17. Wie jedes hashmap zu einem Arraylist
- 18. Java HashMap mit verschachtelten String oder Arraylist
- 19. Wie kann ich ArrayList mithilfe von HashMap mehrere Werte zuweisen?
- 20. Kann doppelte Elemente aus Arraylist von hashmap entfernen
- 21. Java StackOverflowError nach dem Setzen von ArrayList auf HashMap
- 22. Auszugswerte aus einer Arraylist von HashMap mit java8
- 23. Der beste Weg, um eine hashmap von arraylist zu erstellen
- 24. Arraylist <HashMap <String, String >> zu String []
- 25. Java ArrayList: Erhalten Sie eindeutige Werte von ArrayList, die HashMap enthalten
- 26. Wie ein ein Arraylist speichern <HashMap <String, String >> mit einem einzigen HashMap und mehrere Arraylist
- 27. ArrayList <HashMap> in Tests und UI leer zurückgeben?
- 28. Wie können Sie eine geschachtelte HashMap in eine ArrayList umwandeln
- 29. Wie man eine ArrayList zu einer Hashmap in Java hinzufügt
- 30. Wie alle Werte in Arraylist auf hashmap in Android setzen?
Woher kommt 'innerMap'? Es gibt keine Variable, die den Wert der inneren Karte enthält, nicht wahr? – Newbie
'innerMap -> neue ArrayList <> (innerMap.values ())' ist ein Lambda, Sie können der Variablen in der Definition einen beliebigen Namen geben, und Sie können es im Funktionsteil verwenden. 'x -> new ArrayList <> (x.values ())' hätte auch funktioniert, ist aber weniger lesbar. Es hängt jedoch davon ab, ob Java 8 für Sie verfügbar ist. Dies hängt davon ab, für welche Android-API-Version Sie entwickeln. – john16384