ich wollte das in ein array umwandeln und dann das array durchlaufen und danach gucken ob das array en übergegebenen wert enthält…und wenn ja dann überspringt er dne und merkt sich das.. das klappt auch alles soweit ganz gut…hab in einer anderen datei ne list erstellt und da läuft das… deswegen ist die frage handelt es sich überhaupt um eine liste bei dem vorgegebenen code? wenn ja wieso meckert der compiler hier Object[] array = elem.toArray(); und wenn nein..wie kann ich das durchsuchen
ja ich steig da auch nicht durch…leider:/ die anderen aufgaben sind kein problem…
das ist die aufgabenstellung:
Ändern Sie die Klasse Liste und die Klasse Element nicht. Leiten Sie stattdessen von der Klasse Liste eine Klasse EListe ab, die eine zusätzliche Methode void ansEndeSchieben(int i) definiert. Ein Aufruf der Methode soll bewirken, dass alle Elemente der Liste mit dem Wert des aktuellen Parameters i ans Ende der Liste platziert werden.
nur ich weiß nicht wie ich anhand der 2 vorgegebenen klassen und der geerbten klasse + die neue methode das hinkriegen soll
ist die Klasse Liste wirklich so vorgegeben? das Instanzattribut elem scheint dort ja ohne Funktion,
dafür dann in der Methode eine gleichnamige lokale Variable, ganz schön schlimm,
weitere Methoden gibts auch nicht?
dann hilft dir die Klasse nicht viel, dann hast du nur die beiden Attribute erstes + letztes,
kannst du mit denen umgehen?
programmiere erstmal allein eine Methode, die die Liste durchläuft und alles ausgibt, von erstes zum Nachfolger von erstes, dann den zweiten Nachfolger usw.
ja genau..wir haben nur die beiden klassen vorgegebenbekommen
ja hm das ist ja das problem das ich nicht weiß wie ich die durchlaufe.. wäre es zb ein array dann kann man das ja ganz einfach mit einer for(int a=0;a<array.length;a++){ … } und dann einfach die gespeicherten werte von erstes und letztes ausgeben
ich glaub einfach das liegt daran das ich nicht verstehe wie die methode hinzufuegen funktioniert.. ich versteh nicht wirklich was die if anweisung macht.. sie prüft ja ob this.erstes == null ist wenn ja dann weißt sie this.erstes und this.letztes elem zu(aber wieso beiden) und wenn nicht dann this.letztes.naechstes und this.letztes ….versteh nicht wirklich was da vorsich geht
Prinzipiell soll der Ablauf bei solch einer "Liste" (Schlagwort: 'einfach verkettete Liste') so sein:
Du hast das Start-Element und holst dir von dem aus das nächste, dann von dem das nächste und dann so weiter.
So iterierst du über die Liste.
Beim Einfügen musst du dann die Referenzen umlegen, so, dass sich das sich das neue Element in die Liste einbettet.