Hallo zusammen,
ich habe folgendes Listing gegeben:
Ich komme hier allerdings mit der Methode listeAnhaengen nicht so ganz zurecht:
Das Listing is ja nicht direkt auf Objekte zugeschnitten und das verwirrt mich als Java-Anfänger schon recht stark.
1.
Bei der oben stehenden Methode gibt es die Schleife while (hilfsKonstruktion.naechster != null)
Wie erkenne ich denn, dass hilfsKonstruktion.naechster auf ein neues Element verweist?
2.
durch die Anweisung hilfsKonstruktion.naechster = new Listenelement ();
wir dadurch nur eine Variable vom Typ Listenelement () angelegt oder ein neues Objekt?
Vielen Dank für eure Hilfe, ich versuch schon seit einigen Stunden das Listing zu verstehen, aber ich steig da nicht so recht durch
ich habe folgendes Listing gegeben:
Java:
class Listenelement {
String daten;
Listenelement naechster;
}
public class verkettete_Liste_V1 {
//Klassenmethoden für die Verarbeitung der Liste
//die Daten für ein Element setzen
//Übergeben wird die Zeichenektte und das Element der Liste
static void setDaten (String datenNeu, Listenelement element) {
//die Zeichenkette setzen
element.daten = datenNeu;
//das Ende markieren
element.naechster = null;
}
//ein neues Elemtn am ende der Liste einfügen
//übergeben wird die Zeichenkette und der Listenanfang
//das Eigentliche einfügen erfolgt über die Methode setDaten()
static void listeAnhaengen (String datenNeu, Listenelement listenAnfang) {
//eine Hilfskonstruktion zum wandern in der Liste
Listenelement hilfskonstruktion;
hilfskonstruktion = listenAnfang;
//durch die Liste gehen, bis das Ende erreicht ist
while (hilfskonstruktion.naechster != null)
hilfskonstruktion = hilfskonstruktion.naechster;
hilfskonstruktion.naechster = new Listenelement ();
hilfskonstruktion = hilfskonstruktion.naechster;
//die Daten eintragen
setDaten (datenNeu, hilfskonstruktion);
}
//die Ausgabe der kompletten Liste
static void listeAusgeben (Listenelement listenAnfang) {
//die Hilfskonstruktion
Listenelement hilfsKonstruktion;
hilfsKonstruktion = listenAnfang;
//erstets Element ausgeben
System.out.println (hilfsKonstruktion.daten);
//und nun den Rest
while (hilfsKonstruktion.naechster != null) {
//bitte in einer Zeile eingeben
hilfsKonstruktion = hilfsKonstruktion.naechster;
System.out.println (hilfsKonstruktion.daten);
}
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Listenelement listenAnfang = new Listenelement ();
//die Daten im ersten Listenelement setzen
setDaten ("Element 1", listenAnfang);
//weitere Elemente in eine Schleife einfügen
for (int element = 2; element < 4; element++) {
listeAnhaengen ("Element " + element, listenAnfang);
}
listeAusgeben (listenAnfang);
}
}
Ich komme hier allerdings mit der Methode listeAnhaengen nicht so ganz zurecht:
Das Listing is ja nicht direkt auf Objekte zugeschnitten und das verwirrt mich als Java-Anfänger schon recht stark.
1.
Bei der oben stehenden Methode gibt es die Schleife while (hilfsKonstruktion.naechster != null)
Wie erkenne ich denn, dass hilfsKonstruktion.naechster auf ein neues Element verweist?
2.
durch die Anweisung hilfsKonstruktion.naechster = new Listenelement ();
wir dadurch nur eine Variable vom Typ Listenelement () angelegt oder ein neues Objekt?
Vielen Dank für eure Hilfe, ich versuch schon seit einigen Stunden das Listing zu verstehen, aber ich steig da nicht so recht durch