Map gezielt abfragen?

Status
Nicht offen für weitere Antworten.

metalfan

Aktives Mitglied
Hi, habe hier eine zweistufige Map, wie kann man die innere Map gezielt nach einem Wertepaar fragen wenn man den Schlüssel hat?


Code:
Map<String, Map<String, String>> test = new HashMap<String, Map<String, String>>();
		
		Map<String, String> test1 = new HashMap<String, String>();
		test1.put("Captain", "Sparrow");
		test1.put("barbossa", "2ndCaptain");
		
		Map<String, String> test2 = new HashMap<String, String>();
		test2.put("lala", "bus");
		test2.put("bla", "auto");
		
		test.put("map1", test1);
		test.put("map2", test2);
		

		for (Map.Entry<String, Map<String, String>> e: test.entrySet()){
			System.out.println(e);
			if (e.getKey()=="map1"){
                            //hier auf die innere map zugreifen ohne alle elemente abzulaufen?
				System.out.println(e.getValue());
               }


greets
metalfan
 

semi

Top Contributor
metalfan hat gesagt.:
Hi, habe hier eine zweistufige Map, wie kann man die innere Map gezielt nach einem Wertepaar fragen wenn man den Schlüssel hat?
Gar nicht.

Wie wär's mit einem zusammengesetzten Schlüssel?
Code:
Map<String, String> test = new HashMap<String, String>();

test.put("map1.Captain", "Sparrow");
...
test.put("map2.lala", "bus");
 

kleiner_held

Top Contributor
Zeile 20:
Code:
System.out.println(e.getValue().get("Captain"));
du kannst sogar auf deine schon vorhandene Schleife verzichten, wenn du nur den "Captain" aus "map1" haben willst.

Code:
System.out.println(test.get("map1").get("Captain"));

PS Strings immer mit equals vergleichen (bezieht sich auf Zeile 18 in deinem Code-Beispiel)
 

metalfan

Aktives Mitglied
Aha, aber warum gibt java bei:

Code:
for (Map.Entry<String, Map<String, String>> e: test.entrySet()){
			
			System.out.println(e.getValue().get("Captain"));
		}

null
Sparrow

aus?
 

Leroy42

Top Contributor
metalfan hat gesagt.:
Code:
...

Das nenn' ich mal ein wirkliches KSKB, metalfan
hat Code geschrieben und gepostet, der seine Frage
auf den Punkt bringt, ohne uns mit irrelevantem
Code zuzumüllen.
:applaus:

Ansonsten schließe ich mich meinen Vorpostern an!
 

kleiner_held

Top Contributor
metalfan hat gesagt.:
Aha, aber warum gibt java bei:

Code:
for (Map.Entry<String, Map<String, String>> e: test.entrySet()){
			
			System.out.println(e.getValue().get("Captain"));
		}

null
Sparrow

aus?

Weil du über alle Maps in test iterierst. Die Reihenfolge der iteration ist nicht gleich der Reihenfolge der Einfügung, deswegen kommt in deinem Beispiel zuerst die map2, die enhält keinen Eintrag unter "Captain" -> Ausgabe null. Dann kommt die map1 und die enthält unter "Captain" -> "Sparrow"
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
EnHancEd[] ArrayList gezielt löschen Allgemeine Java-Themen 9
Z Elemente einer HashTabelle gezielt ansprechen Allgemeine Java-Themen 10
W gezielt eine Zeile einlesen? Allgemeine Java-Themen 6
ReinerCoder Case statt if else Abfragen?! Allgemeine Java-Themen 8
O Datentypen Wie kann ich den Typ einer ArrayList abfragen ? Allgemeine Java-Themen 7
VfL_Freak KeyEvent.VK_TAB im KeyListener abfragen Allgemeine Java-Themen 13
cool_brivk24 Variablen abfragen von Boolean von anderer Klasse Allgemeine Java-Themen 12
B Generelle Frage bei einer Webanwendung / Reduzierung von DB Abfragen Allgemeine Java-Themen 1
E Status eines USB Mikrofon abfragen Allgemeine Java-Themen 2
D TextBox Abfragen Allgemeine Java-Themen 2
kodela aktuelle Position des Hauptfensters abfragen Allgemeine Java-Themen 12
J Tonhöhe & Lautstärke abfragen? Allgemeine Java-Themen 3
K USB infos unter Linux abfragen? Allgemeine Java-Themen 2
P Threads Parallelisierte DB-Abfragen mit variabler Anzahl an Threads Allgemeine Java-Themen 4
MiMa Variableninhalte dynamisch abfragen Allgemeine Java-Themen 12
A Erste Schritte If Abfragen + Scanner Allgemeine Java-Themen 7
Z AD Abfragen mit Java! Allgemeine Java-Themen 3
L Abfragen ob Threads fertig Allgemeine Java-Themen 3
chuxXo BasicPlayer - Beendigung Abfragen (Allgemein) Allgemeine Java-Themen 21
P Name der Parent Klasse abfragen Allgemeine Java-Themen 8
H In windowClosing() abfragen, ob STRG gedrückt wurde Allgemeine Java-Themen 8
M Aktuelle Systemzeit und Datum abfragen Allgemeine Java-Themen 2
M CapsLock abfragen wenn Fenster wieder aktiviert wird Allgemeine Java-Themen 5
P Variablen Werte der Objektvariablen mit getFields() abfragen Allgemeine Java-Themen 2
P Klassen Template-Klasse für Datenbank-Abfragen erstellen Allgemeine Java-Themen 2
J XML Inhalt von Web abfragen Allgemeine Java-Themen 6
D Von mehreren Objekten eine Eigenschaft abfragen Allgemeine Java-Themen 11
S HTTP Filmgenre aus dem Internet abfragen! Allgemeine Java-Themen 6
M Zahl aktiver Threads einer Gruppe verlässlich abfragen Allgemeine Java-Themen 3
R Was ist hier falsch? Abfragen Allgemeine Java-Themen 3
E Unique Ids abfragen? Allgemeine Java-Themen 5
Airwolf89 Wahrheitstabelle abfragen Allgemeine Java-Themen 3
M ständiges abfragen einer .txt Allgemeine Java-Themen 2
S Zeitserver Abfragen und in Date speichern Allgemeine Java-Themen 5
V Hostname abfragen gelingt nicht immer Allgemeine Java-Themen 2
H Windows abfragen Allgemeine Java-Themen 2
M Enter Taste in Konsole abfragen Allgemeine Java-Themen 2
N IP-Adresse Eingabe abfragen? Allgemeine Java-Themen 4
J Mit Scanner-Klasse eine Datei zeilenweise einlesen und nur bestimmte Zeichen abfragen Allgemeine Java-Themen 11
C Batchdatei ausführen und Ergebnisse abfragen Allgemeine Java-Themen 8
M Vermeiden von instanceof Abfragen Allgemeine Java-Themen 3
M SQL-Installation abfragen Allgemeine Java-Themen 14
Z Wetterdaten abfragen Allgemeine Java-Themen 5
J Zweiter Prozess der alle x Sekunden etwas abfragen soll Allgemeine Java-Themen 2
R Zugriffsrechte abfragen Allgemeine Java-Themen 2
R boolean im Bean abfragen Allgemeine Java-Themen 18
G Checkboxen abfragen,Auswahl sichern, JTable laden Allgemeine Java-Themen 2
G Mausbewegung abfragen? Allgemeine Java-Themen 2
C Binärbereich einer Variablen abfragen Allgemeine Java-Themen 8
S Datenbank Abfragen mit großen Datenmengen Allgemeine Java-Themen 22
H Mit Java Desktop abmessungen height/width abfragen Allgemeine Java-Themen 20
H Sekunden messen wie lange h.ibernate/jdbc abfragen brauchen Allgemeine Java-Themen 7
G Abfragen des types Allgemeine Java-Themen 7
I Am System angemeldeten Benutzer abfragen Allgemeine Java-Themen 11
P verfügbare COM Schnitstellen abfragen Allgemeine Java-Themen 4
P <null> in einer DB abfragen Allgemeine Java-Themen 4
S Wie Carriage Return Line Feed abfragen. Allgemeine Java-Themen 6
T Hibernate Criteria Queries - Abfragen von Collection-Members Allgemeine Java-Themen 2
E Viele if Abfragen auf viele Strings --> Alternative zu if Allgemeine Java-Themen 8
T Tastatur global abfragen Allgemeine Java-Themen 2
MQue Vereinfachung von if- Abfragen Allgemeine Java-Themen 21
Chris_1980 Mausbewegung abfragen Allgemeine Java-Themen 4
E Events von inneren Klasse abfragen Allgemeine Java-Themen 7
B jre version in der html-datei für ein applet abfragen Allgemeine Java-Themen 5
S Prozessorauslastung abfragen Allgemeine Java-Themen 2
C Tastatureingabe in einem Frame abfragen Allgemeine Java-Themen 2
R Thread.sleep - abfragen Allgemeine Java-Themen 4
S Name der ausführenden jar-Datei abfragen Allgemeine Java-Themen 11
S Abfragen der Komponente bei actionperformed Allgemeine Java-Themen 2
A Dateistatus abfragen und Datei löschen sobald kein Zugriff Allgemeine Java-Themen 7
G JavaMail - Message vom Server, wie abfragen? Allgemeine Java-Themen 2
J Name des aktuell aktiven Windows-Fensters abfragen? Allgemeine Java-Themen 4
T Bittorrent TRACKER abfragen mit JAVA Allgemeine Java-Themen 4
C Threads abfragen, aber wie? Allgemeine Java-Themen 3
J ArrayList mit SQL abfragen ? Allgemeine Java-Themen 6
thE_29 ? in einem String abfragen Allgemeine Java-Themen 7

Ähnliche Java Themen

Neue Themen


Oben