Hallo,
es geht um Folgendes:
Ich habe ein Programm mit vier Grundelementen (Arbeitszeiten, Regiezeiten, Pausenzeiten, Fehlerzeiten) geschrieben. Jedes Element hat eine Startzeit. Mein Programm verfügt über ein Archiv in dem ich alle gespeicherten Werte auswählen kann.
Zum Auslesen hab ich mir ein eigenes JTextPane gebaut welches die Elemente nach der Zeit geordnet ausgeben soll. Hier ist dann auch mein Problem:
Für dieses ordnen brauche ich 200 Codezeilen if-else Verschachtelung. Zuerst prüfe ich ob noch Elemente vorhanden sind. Allein dadurch entstehen 16 Fälle.
usw...
Danach ermittle ich den nächsten Wert der ausgegeben werden muss. Hier muss ich auf alle Elemente prüfen die noch vorhanden sind.
Nach der Ausgabe durchlaufe ich alles solange bis keine Elemente mehr vorhanden sind.
Diese Lösung funktioniert zwar, ist aber sehr aufwendig und unübersichtlich. Bis jetzt ist mir noch keine bessere Methode eingefallen. Bin für Anregungen und Tipps dankbar.
LG
es geht um Folgendes:
Ich habe ein Programm mit vier Grundelementen (Arbeitszeiten, Regiezeiten, Pausenzeiten, Fehlerzeiten) geschrieben. Jedes Element hat eine Startzeit. Mein Programm verfügt über ein Archiv in dem ich alle gespeicherten Werte auswählen kann.
Zum Auslesen hab ich mir ein eigenes JTextPane gebaut welches die Elemente nach der Zeit geordnet ausgeben soll. Hier ist dann auch mein Problem:
Für dieses ordnen brauche ich 200 Codezeilen if-else Verschachtelung. Zuerst prüfe ich ob noch Elemente vorhanden sind. Allein dadurch entstehen 16 Fälle.
Code:
if(gesA > stepA){
if(gesR > stepR){
if(gesP > stepP){
if(gesF > stepF){
Danach ermittle ich den nächsten Wert der ausgegeben werden muss. Hier muss ich auf alle Elemente prüfen die noch vorhanden sind.
Code:
if((arbeit.getArbeitszeiten().get(stepA).getStart().compareTo(arbeit.getRegiezeiten().get(stepR).getStart()) < 1)){
if((arbeit.getArbeitszeiten().get(stepA).getStart().compareTo(arbeit.getPausen().get(stepP).getStart()) < 1)){
if((arbeit.getArbeitszeiten().get(stepA).getStart().compareTo(arbeit.getFehler().get(stepF).getStart()) < 1)){
outA(arbeit.getArbeitszeiten().get(stepA));
stepA++;
Nach der Ausgabe durchlaufe ich alles solange bis keine Elemente mehr vorhanden sind.
Diese Lösung funktioniert zwar, ist aber sehr aufwendig und unübersichtlich. Bis jetzt ist mir noch keine bessere Methode eingefallen. Bin für Anregungen und Tipps dankbar.
LG