Hallo zusammen,
Hab hier mal wieder ein simples Problem aber finde es nicht heraus.
Es geht darum das wir eine Array haben mit dem Namen "liste". In dieser Liste haben wir das Objekt Element welches eine entsprechende ID hat.
Die Aufgabe war es verschiedene Befehel für die Array selber zu programmieren.Zum Beispiel war ein Befehl,das ein Element immer zuvorderst eingefügt wurde.Für das musste man ja die restliche Elemente nach hinten schieben.
So, doch nun muss ich Elemente mit der entsprechende ID löschen.
Daraus ergeben sich 2 Fragen.
Grundsätzlich kann man ja keine Elemente einfach so löschen wie in einer ArrayList,darum dachte ich,ich muss die Elemente nachrutschen.Doch wenn ich das letzte Element der Liste löschen will,dann kann ich ja da nichts nachrutschen?
Dann ist da noch ein anders Problem. Bei der Methode "delete" muss ja ein boolean zurückgegeben werden, so wie mein Code unten ist funktioniert es nicht.
Der Compiler meint " This method must return a result of type boolean"Aber das mach ich doch?
Die Idee der Methode ist. Gehe die Liste durch falls keine passende ID gefunden wird dann schreib "Keine passende ID gefunden" Man so simpel aber ich check es nicht.
Kann mir hier jemand weiterhelfen?
Hab hier mal wieder ein simples Problem aber finde es nicht heraus.
Es geht darum das wir eine Array haben mit dem Namen "liste". In dieser Liste haben wir das Objekt Element welches eine entsprechende ID hat.
Die Aufgabe war es verschiedene Befehel für die Array selber zu programmieren.Zum Beispiel war ein Befehl,das ein Element immer zuvorderst eingefügt wurde.Für das musste man ja die restliche Elemente nach hinten schieben.
So, doch nun muss ich Elemente mit der entsprechende ID löschen.
Daraus ergeben sich 2 Fragen.
Grundsätzlich kann man ja keine Elemente einfach so löschen wie in einer ArrayList,darum dachte ich,ich muss die Elemente nachrutschen.Doch wenn ich das letzte Element der Liste löschen will,dann kann ich ja da nichts nachrutschen?
Dann ist da noch ein anders Problem. Bei der Methode "delete" muss ja ein boolean zurückgegeben werden, so wie mein Code unten ist funktioniert es nicht.
Der Compiler meint " This method must return a result of type boolean"Aber das mach ich doch?
Die Idee der Methode ist. Gehe die Liste durch falls keine passende ID gefunden wird dann schreib "Keine passende ID gefunden" Man so simpel aber ich check es nicht.
Kann mir hier jemand weiterhelfen?
Java:
@Override
public boolean delete(int id) {
for (int i = 0; i < anzEl; i++) {
if (liste[i].getId() == id) {
//Hier kommt dann der lösch Vorgang
return true;
} else {
System.out.println("Keine passende ID gefunden");
return false;
}
}
}