Informatik, BlueJ: Attribute bei Liste mit Knoten ändern?
Ich bin ein ziemlicher Anfänger in Informatik, also kommt diese Frage jetzt vielleicht dumm. Und es ist eigentlich total selbstverständlich, aber ich schreib übermorgen einen Test und verstehe es gerade nicht😅.
Also bei einer Liste mit Anfang, beliebig vielen Knoten und einem Abschluss am Ende will ich vorne einen neuen Knoten einfügen. Das mach ich, indem ich zuerst von der Liste aus einen Knoten erstelle, diesem möchte ich dann den alten Anfang als Nachfolger zuweisen. Wie mach ich das? Kann man einfach, nachdem man ihn erstellt hat,
newKnoten.Nachfolger = anfang;
schreiben? Also wenn ein Attribut von Knoten „KNOTEN Nachfolger“ heißt? Kann man Attribute einfach so ändern (vielleicht wenn sie nicht auf private sind?) oder muss man dafür einzelne Methoden erstellen?
Hier noch ein Bild; ist das
newKnoten.Nachfolger = anfang;
einfach eine Änderung des Attributs? Kann man das so machen?
2 Antworten
Wenn anfang ein Attribut der Klasse ist, in der diese Methode existiert, dann ja, müßte das so gehen, wenn der Typ stimmt.
(Das drumherum fehlt einfach, von daher geht es nicht genauer.)
Und ich nehme an, daß es eine einfach (verkettete) Liste sein soll.
Stehen diese Methode und die Eigenschaft anfang in derselben Klasse? Wenn ja, kann man dies so machen.
Sorry, vergessen zu sagen: Anfang ist ein KNOTEN, also nicht LISTE..
Ja, das kann man sich aber denken. Aber wo wird dieser Knoten deklariert? Wahrscheinlich in der Liste, oder? Dann könntest du das so machen.
Übrigens: Warum testest du deinen Code nicht aus, wenn du dir unsicher bist?
Sorry, vergessen zu sagen: Anfang ist ein KNOTEN, also nicht LISTE.. und die Methode steht in Liste.
Wenn beides in einer Klasse wäre, müsste man einen Parameter mit dem Attribut hinter die Methode schreiben?