Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
kann man in Java ein Array erstellen, das aus Einträgen vom Typ ArrayList besteht? ...also quasi viele ArrayLists in einem Array speichern?
Grund: Die Spaltenzahl für meine Tabelle, die ich damit bauen will, ist statisch fest. Die Anzahl der Zeilen hingegen ist variabel und daher müssen Zeilen dynamisch mittels ArrayList gespeichert werden.
typischerweise hat man aber eher oben eine Liste von Zeilen
und darin dann vielleicht ein Array von Spalten,
so kann es nämlich nicht sein, dass für eine Zeile ein Spalten-Wert fehlt
(falls nicht ungewöhnlicherweise ein falsches Array als neue Zeile eingefügt wird)
so kann es nämlich nicht sein, dass für eine Zeile ein Spalten-Wert fehlt
(falls nicht ungewöhnlicherweise ein falsches Array als neue Zeile eingefügt wird)
List ist ein Interface welches unteranderem von ArrayList und LinkedList implementiert wird. Das heißt, dass du eine Objektvariable mit dem Typ List deklarieren kannst und dann mit einer Klasse, die List implementiert initialisieren musst.
Diese Implementierung sorgt für mehr Flexibilität.
Ich habe mich jetzt entschlossen die Spalten auch dynamisch als Liste zu implementieren. Habe mir gedacht, ich mache eine Klasse für die Spalten, welche eine ArrayList für die Zeilen enthält. Ist das die übliche Vorgehensweise. Falls ja, frage ich mich, wie man da dann durchiterieren kann. Mein kurzer Code-Entwurf ist der folgende:
Java:
//Die Tabelle besteht aus Knoten vom Typ "Category"
public class Attribut {
private ArrayList<Category> list;
public Attribut(){
list = new ArrayList<Category>();
}
public get(int index){
return list.get(index);
}
public add(Category e){
this.list.add(e);
}
}
In "Java ist auch eine Insel" stand leider nichts zu derartigen "zweidimensionalen Listen". Falls jemand eine Anleitung kennt, oder mir ein kleines Beispiel geben kann, wäre das super.
wie gesagt ist üblich, eine Liste von Zeilen zu verwenden,
jede Zeile besteht aus einer festen Zahl an Attributen (für jede Spalte eines), entweder als Liste/ Array oder noch besser als ein echtes Objekt einer eigenen Klasse
class Person {
String vorname; // in der Tabelle Spalte 1
String nachname; // in der Tabelle Spalte 2
}
List<Person> // Liste aller Zeilen
> Falls ja, frage ich mich, wie man da dann durchiterieren kann.
in deinem Fall musst du entweder die ArrayList zurückgeben oder einen anderen Iterator
oder nur die Anzahl und dann eine konventionelle for-Schleife, die auf die get-Methode zugreift