Hallo, ich habe ein 4 dimensionales String-Array das mir probleme bereitet wenn ich es ausgeben will. Ich möchte das nur die Slots ausgegeben werden die nicht null enthalten. Ich habe vermutlich viel zu viele verkettete Schleifen, hatte aber auch keine andere Lösung parat.
In meinem Test hatte ich nur einen Eintrag gespeichert, der wurde mir auch ausgegeben, nach ca 20 Sekunden Wartezeit(Dachte erst das Programm hätte sich aufgehängt oder so), was vermutlich daran liegt das ich Schleife in Schleife in Schleife habe. Nachdem er dann tatsächlich den richtigen Slot ausgegeben hat, hat er das jedoch x-mal, bis eine ArrayIndexOutOfBoundsException kam.
Hier mal die relevanten Teile meines Codes:
In meinem Test hatte ich nur einen Eintrag gespeichert, der wurde mir auch ausgegeben, nach ca 20 Sekunden Wartezeit(Dachte erst das Programm hätte sich aufgehängt oder so), was vermutlich daran liegt das ich Schleife in Schleife in Schleife habe. Nachdem er dann tatsächlich den richtigen Slot ausgegeben hat, hat er das jedoch x-mal, bis eine ArrayIndexOutOfBoundsException kam.
Hier mal die relevanten Teile meines Codes:
Java:
String[][][][] kalender = new String[5000][12][31][24];
//[Jahr][Monat][Tag][Stunde]
kalender[jahr][monat] = new String[tage][stunden];
System.out.println("Bitte geben sie den Betreff ein: ");
kalender [jahr-1][monat-1][tage-1][stunden-1] = sc.next();
...
for(int w = 0; w<kalender.length; w++){
for(int a = 0; a<12; a++){
for(int x = 0; x<kalender[a].length; x++){
for(int b = 0; b < 31; b++){
for(int y=0;y<kalender[b].length;y++){
for(int c = 0; c<24; c++){
for(int z = 0; z<kalender[c].length;z++){
if(kalender[w][x][y][z] != null){
System.out.println(kalender[w][x][y][z]);
}
}
}
}
}
}
}
}
Zuletzt bearbeitet: