Guten Abend, ich verstehe die Aufgabe nicht richtig.
[CODE lang="java" title="Verkette Liste"]class Listenelement {
// Instanzvariable
String daten;
Listenelement naechster;
void setDaten (String datenNeue) {
daten = datenNeue;
naechster = null;
}
void anhaengen(String datenNeu) {
if (naechster == null) {
naechster = new Listenelement();
naechster.setDaten(datenNeu);
}
else
naechster.anhaengen(datenNeu);
System.out.println("Daten\t"+datenNeu+"\t wurden eingefügt.");
}
void ausgeben() {
System.out.println(daten);
if (naechster != null)
naechster.ausgeben();
}
}
public class ListeV3 {
public static void main(String[] args) {
Listenelement listenAnfang = new Listenelement();
listenAnfang.setDaten("Element1");
for (int element = 2; element < 4; element++)
listenAnfang.anhaengen("Element"+element);
listenAnfang.ausgeben();
}
}
[/CODE]
Ich versuche meine Gedanken zu spiegeln.
Frage 1) 2 Instanzvariablen werden vereinbart. String daten & Listenelement naechster und warum nicht String naechster ???
Jetzt versuche ich von der Methode main() aus, die Ausgabe zu erklären, die ich nicht richtig verstehe.
Neues Listenelement wird erzeugt : listenAnfang : Instanz der Klasse Listenelement
listenAnfang.setDaten("Element1"); führt zum Ergebnis: daten = "Element1" und naechster = null, somit wird listenAnfang der Wert ""Element1" zugewiesen.
Also: listenAnfang = "Element 1" & naechster = null; zur der Zeitpunkt?
Bevor ich mit der for - Schleife beginne, zeige ich euch die Ausgabe.
Daten Element2 wurden eingefügt.
Daten Element3 wurden eingefügt.
Daten Element3 wurden eingefügt.
Element1
Element2
Element3
ich verstehe nicht warum bei der for - Schleife die else Zweig ausgeführt wird, obwohl naechster = null ist ?
Es wäre sehr nett, wenn jemand mit einfachen Wörtern erklären könnte. Vor Allem wird die Methode wieder rekursiv wieder aufgerufen.
Ich bedanke mich im Voraus.
[CODE lang="java" title="Verkette Liste"]class Listenelement {
// Instanzvariable
String daten;
Listenelement naechster;
void setDaten (String datenNeue) {
daten = datenNeue;
naechster = null;
}
void anhaengen(String datenNeu) {
if (naechster == null) {
naechster = new Listenelement();
naechster.setDaten(datenNeu);
}
else
naechster.anhaengen(datenNeu);
System.out.println("Daten\t"+datenNeu+"\t wurden eingefügt.");
}
void ausgeben() {
System.out.println(daten);
if (naechster != null)
naechster.ausgeben();
}
}
public class ListeV3 {
public static void main(String[] args) {
Listenelement listenAnfang = new Listenelement();
listenAnfang.setDaten("Element1");
for (int element = 2; element < 4; element++)
listenAnfang.anhaengen("Element"+element);
listenAnfang.ausgeben();
}
}
[/CODE]
Ich versuche meine Gedanken zu spiegeln.
Frage 1) 2 Instanzvariablen werden vereinbart. String daten & Listenelement naechster und warum nicht String naechster ???
Jetzt versuche ich von der Methode main() aus, die Ausgabe zu erklären, die ich nicht richtig verstehe.
Neues Listenelement wird erzeugt : listenAnfang : Instanz der Klasse Listenelement
listenAnfang.setDaten("Element1"); führt zum Ergebnis: daten = "Element1" und naechster = null, somit wird listenAnfang der Wert ""Element1" zugewiesen.
Also: listenAnfang = "Element 1" & naechster = null; zur der Zeitpunkt?
Bevor ich mit der for - Schleife beginne, zeige ich euch die Ausgabe.
Daten Element2 wurden eingefügt.
Daten Element3 wurden eingefügt.
Daten Element3 wurden eingefügt.
Element1
Element2
Element3
ich verstehe nicht warum bei der for - Schleife die else Zweig ausgeführt wird, obwohl naechster = null ist ?
Es wäre sehr nett, wenn jemand mit einfachen Wörtern erklären könnte. Vor Allem wird die Methode wieder rekursiv wieder aufgerufen.
Ich bedanke mich im Voraus.