Hallo,
zu Beginn meines Programmes erzeuge ich ein Array[7]. Im Laufe des Programmes möchte ich dann eine Funktion aufrufen, die einen Parameter entgegennimmt und diesen im ersten freien Platz des Feldes speichert und daraufhin beendet wird, bis sie erneut aufgerufen wird. Ausserdem soll es eine Exception geben, falls mehr als 7 Aufrufe stattfinden. Das Problem ist, dass die Funktion zwar an sich aufgerufen wird und auch ohne Fehlermeldung durchläuft, allerdings weiß ich durch die Fehlermeldung der folgenden Funktion, dass nicht alle 7 Plätze am Ende eine Referenz speichern. Ich vermute, dass mit meinem counter etwas nicht stimmt. Kann mir eventuell jemand weiterhelfen? Die Funktion bei der der Fehler liegt, sieht wie folgt aus:
zu Beginn meines Programmes erzeuge ich ein Array[7]. Im Laufe des Programmes möchte ich dann eine Funktion aufrufen, die einen Parameter entgegennimmt und diesen im ersten freien Platz des Feldes speichert und daraufhin beendet wird, bis sie erneut aufgerufen wird. Ausserdem soll es eine Exception geben, falls mehr als 7 Aufrufe stattfinden. Das Problem ist, dass die Funktion zwar an sich aufgerufen wird und auch ohne Fehlermeldung durchläuft, allerdings weiß ich durch die Fehlermeldung der folgenden Funktion, dass nicht alle 7 Plätze am Ende eine Referenz speichern. Ich vermute, dass mit meinem counter etwas nicht stimmt. Kann mir eventuell jemand weiterhelfen? Die Funktion bei der der Fehler liegt, sieht wie folgt aus:
Java:
public void fuegeWettkampfrichterHinzu(Wettkampfrichter richter) throws IllegalStateException{
int counter = 0;
for(++counter ; counter<bewertungsverfahren.length; counter++) {
if(counter == bewertungsverfahren.length + 1) {
throw new IllegalStateException("Es können maximal 7 Richter aufgenommen werden");
}
if(bewertungsverfahren[counter] == null) {
bewertungsverfahren[counter] = richter;
break;
}
}
}