Ich habe eine Klasse die einen Baum realisiert:
Ich kann diesen Baum durchsuchen, was mit Rekursion wunderbar funktioniert.
Z.B.: :toll:
Nun würde ich aber gerne noch die Strings registrieren, also im Hauptprogramm in einer Liste bereitstellen. :shock:
Und da beginnen meine Probleme:
Wer kann mir helfen?
Java:
public class myBaum {
private ArrayList<myBaum> nachFolger;
private String daten;
private int mengen;
public int zähle() ...
public void registriere() ...
oder: public List<String> registriere() ...
...
}
Ich kann diesen Baum durchsuchen, was mit Rekursion wunderbar funktioniert.
Z.B.: :toll:
Java:
// in myBaum
public int zähle(){ // Läuft perfekt.
int summe = 0;
for (myBaum next:this.nachFolger){
summe += next.zähle();
}
return summe;
}
Java:
// in myBaum
public void registriere(){ // Nur Muster für die Funktion, macht aber Probleme.
( z.B.: gesamtListe).add(this.daten);
for (myBaum next: this.nachFolger){
next.registriere();
}
}
Und da beginnen meine Probleme:
- 'gesamtListe' ist eine List<String> in meiner mainClasse; darauf hab ich aus myBaum keinen Zugriff.
- 'registriere' mit 'return List<String>' scheitert daran, dass ich in der Klasse keine Daten anlegen kann.
- Ein klassisches 'tempList = new List<String>', mit return kann ich wegen der Rekursion nicht machen.
- Vielleicht könnte das mit einer 'static liste' in der Klasse funktionieren, aber ich weiß nicht wie.
Wer kann mir helfen?