Map<String, Treeset> aus Treeset bestimmten Wert auslesen

Todesbote

Mitglied
Hallo zusammen,
ich habe in meinem Programm eine Map<String, Treeset>.
Zu jedem Key sind im Treeset mehrere Zeilen gespeichert.
Diese sehen etwa so aus:
a b c d
a b c d

Nun möchte ich z.B das c aus der letzen Zeile haben.
Dieses c enthält einen Status (update, neuanmeldung, ausfall).
Ich möchte eine Ausgabe machen die mir sagt Erreichbar J/N (bei ausfall N).

Das Aufrufen der Map funktioniert soweit und ich kann auch die kompletten Schlüssel - Wert Paare ausgeben.
In der Java API hab ich was zu last() gelesen damit müsste ich ja die letzte Zeile (a b c d) des Set bekommen. Allerdings habe ich Probleme diese in meinen Code einzubringen. Wie rufe ich last() auf?

Oder gibt es andere Möglichkeiten?

mfg
 
M

Marcinek

Gast
Sicher, dass das Design korrekt ist?

Beinhaltet die Map strings?

Wären hier nicht Objekte sinnvoller?

Ich kann mir nicht vorstellen, dass Last hier die Lösung ist.
 

Todesbote

Mitglied
Meine Map sieht so aus:
[JAVA=42]
// Treemap zum Speichern und Sortieren key=serienNr value=Zeile des CSV Files
public static void logEintragEinfuegen(Map<String, Set<LogEintrag>> logEintraege, LogEintrag le) {
if (le.serienNr != null) {
if (logEintraege.containsKey(le.serienNr) == false) {
Set<LogEintrag> s = new TreeSet<LogEintrag>(new LogEintragComparator());
s.add(le);
logEintraege.put(le.serienNr, s);
}
else {
Set<LogEintrag> s = logEintraege.get(le.serienNr);
s.add(le);
}
}//Ende if
}//Ende logEintragEinfuegen
[/code]

Die Ausgabe so:
G23-511-C.01/149-006413:
LogEintrag [casdu=8307, stationsname=Am_Goldberg, stationsnummer=1, status=Update, uhrzeit=Thu Jun 28 23:04:03 CEST 2012,
LogEintrag [casdu=8307, stationsname=Am_Goldberg, stationsnummer=1, status=Update, uhrzeit=Fri Jul 27 01:30:45 CEST 2012,


Jede Zeile besteht wiederrum aus Objekten( z.B. casdu ist ein Objekt von typ int. etc)
 
Zuletzt bearbeitet:

Todesbote

Mitglied
Hier noch der Code meiner Klasse in der ich die Auswertung vornehmen möchte.
[JAVA=42]
package de.odr.main;
import java.util.Map;
import java.util.Set;

public class LogEintragInterpretieren {
public LogEintragInterpretieren(Map<String, Set<LogEintrag>> _myMap) {
super();
this._myMap = _myMap;
}
Map<String, Set<LogEintrag>> _myMap = null;


// Hier soll geprüft werden ob der Zähler kommunikativ ist oder nicht

public void kommunikativ() {
for(Map.Entry<String, Set<LogEintrag>> e : _myMap.entrySet()){
String key = e.getKey();
Set<LogEintrag> value = e.getValue();
if(value.equals("Ausfall")) // funktioniert so nicht!
System.out.println("Kommunikativ: N");
else
System.out.println("Kommunikativ: J");
//System.out.println(key +"="+value);
}

}
}
[/code]
 
Zuletzt bearbeitet:

Todesbote

Mitglied
Bin nun selber auf die Lösung gekommen. Mein Problem war, dass ich Set anstatt von TreeSet in meiner Map verwendet habe. Deshalb wurde die Funktion last() nicht erkannt.
So klappts =) :
[JAVA=42]

import java.util.Map;
import java.util.TreeSet;

public class LogEintragInterpretierer {
public LogEintragInterpretierer(Map<String, TreeSet<LogEintrag>> myMap) {
super();
this.myMap = myMap;
}
Map<String, TreeSet<LogEintrag>> myMap = null;

public void kommunikativ() {
for(Map.Entry<String, TreeSet<LogEintrag>> e : myMap.entrySet()){
String key = e.getKey();
TreeSet<LogEintrag> value = e.getValue();
System.out.println(key+"="+value);
if(value.last().status.equals("Ausfall"))
System.out.println("Kommunikativ: N");
else
System.out.println("Kommunikativ: J");
}
}
[/code]

mfg
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Map<String, Integer> sortieren und der reinfolge nach die Glieder abfragen Java Basics - Anfänger-Themen 3
B Map<String, FilterMeta, wie Wert bekommen? Java Basics - Anfänger-Themen 4
T Map<String, Vector>? Java Basics - Anfänger-Themen 11
N Map<String, HashSet<String>> Umwandeln in Map<String, ArrayList<String>> Java Basics - Anfänger-Themen 14
B Objete von Polygon mit TreeSet verwalten Java Basics - Anfänger-Themen 1
N Einzelne Werte aus einem TreeSet auslesen Java Basics - Anfänger-Themen 2
R TreeSet Zugriff aus anderer Klasse Java Basics - Anfänger-Themen 8
J Klassen HashSet, TreeSet: unregelmäßige Zahlenreihen beim Befüllen Java Basics - Anfänger-Themen 7
J Objecte in TreeSet einfügen klappt nicht Java Basics - Anfänger-Themen 5
G Laufzeit/ O/Θ-Notation einer Treeset Methode Java Basics - Anfänger-Themen 0
J TreeSet mit compareTo sortieren Java Basics - Anfänger-Themen 2
W Add zu TreeSet Probleme Java Basics - Anfänger-Themen 6
T TreeSet sortiert in ein anderes kopieren Java Basics - Anfänger-Themen 2
Todesbote Treeset - Wenn bestimmtes Objekt vorkommt Counter erhöhen Java Basics - Anfänger-Themen 6
A Treeset per For-Schleife durchlaufen Java Basics - Anfänger-Themen 2
U TreeSet und Komparatoren Java Basics - Anfänger-Themen 6
B Object "Method" in TreeSet, Fehler beim Vergleichen/Comparable Java Basics - Anfänger-Themen 9
B Lotto mittels TreeSet Java Basics - Anfänger-Themen 3
D Datentypen TreeSet aus einer List<String[]> befüllen Java Basics - Anfänger-Themen 18
M Treeset sortieren und ausgeben Java Basics - Anfänger-Themen 17
K TreeSet Sortieren Java Basics - Anfänger-Themen 6
E TreeSet Element löschen Java Basics - Anfänger-Themen 9
T treeSet durchsuchen Java Basics - Anfänger-Themen 2
R Sortieren TreeSet Java Basics - Anfänger-Themen 2
G HashSet vs. TreeSet Java Basics - Anfänger-Themen 3
M Problem beim Löschen des ersten Eintrags einer TreeSet Java Basics - Anfänger-Themen 3
J TreeSet methode Remove Java Basics - Anfänger-Themen 13
M TreeSet sortieren Java Basics - Anfänger-Themen 13
C Maximal-Anzahl von Objekten in TreeSet Java Basics - Anfänger-Themen 7
S TreeSet und StringTokenizer Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben