Collection in einer Collection

Status
Nicht offen für weitere Antworten.

sorosch

Mitglied
Hallo

kann man folgendes machen:

folgende Bean:

Code:
public class DropDownElement {

	public int id = 0;
	public String value = null;
	public int idRef = 0;

//natürlich mit getter/setter-Methoden

}


Collections deklarieren:
Code:
Collection<Collection<DropDownElement>> collAll = new ArrayList<Collection<DropDownElement>>();
Collection<DropDownElement> coll1 = new ArrayList<DropDownElement>();
Collection<DropDownElement> coll2 = new ArrayList<DropDownElement>();
DropDownElement ebene1 = null;
DropDownElement ebene2 = null;

Dann fülle ich zuerst die beiden Collections coll1 und coll2:
Code:
while {
ebene1 = new DropDownElement();
ebene1.setId(resultSet.getInt("id"));
ebene1.setValue(resultSet.getString("value"));
coll1.add(ebene1);
}

while {
ebene2 = new DropDownElement();
ebene2.setId(resultSet.getInt("id"));
ebene2.setValue(resultSet.getString("value"));
coll2.add(ebene2);
}

Und füge die beiden Collections der Collection collAll hinzu und gebe diese zurück:

Code:
collAll.add(coll1);
collAll.add(coll2);
return collAll;


Soweit schauts meiner Meinung nach gut aus.

In einer anderen Klasse mache ich folgendes:
Code:
private static Collection<Collection<DropDownElement>> myCollAll;

//hole mir die Collection
myCollAll = DropDownSearchDAO.getAllDropDowns();


//Möchte mit dieser Methode die Werte einer Collection zurückgeben
    	public Collection getAllValues(int ebene) {

		Collection coll = new ArrayList<DropDownElement>();
		Iterator it = collAll.iterator();
		int i = 1;

		while (it.hasNext()) {
			if (i == ebene) {

				coll = (Collection) it.next();
				
			}
    i++;
		}

		return coll;

	}
Nur das erzeugt eine Endlosschleife:
while (it.hasNext())

Die Frage ist nur warum? Wo ist hier der Denkfehler? Oder kann man ganz einfach keine Collection in eine andere Collection einfügen?

Vielen Dank
cu
George
 

Murray

Top Contributor
Nach dem
Code:
coll = (Collection) it.next();
fehlt wohl ein break.

Aber definiere colAll doch als List<Collection<DropDownElement>>, dann kannst du direkt mit dem Ebenen-Index (0-basiert!) in die Liste greifen und sparst die die Schleife.
 

Zed

Bekanntes Mitglied
Ich denke du hast das Systemlayout nicht besonderst gut durchdacht.

Es sollte eine Klasse geben die das Dropdownmenu beschreibt und eine Klasse die das Dropdownelement beschreibt.

So brauchst du nur 1 Collection mit dem Dropdownmenu um mehrere Menus zusammenzufassen.

Dropdownmenu hat wiederum eine Collection mit Dropdownelementen.
 

sorosch

Mitglied
Vielen Dank euch beiden.

Ich habe collAll als List<Collection<DropDownElement>> definiert - und es geht:)

Aber wieso soll man ein break bei while (it.hasNext()) brauchen? Habe ich noch nicht gesehen.

Das Systemlayout wird hoffentlich passen:) Kann man sicher auch so machen, wie du das beschrieben hast.
 

Murray

Top Contributor
sorosch hat gesagt.:
Aber wieso soll man ein break bei while (it.hasNext()) brauchen? Habe ich noch nicht gesehen.

Weil du it.next () nur aufrufst, wenn i == ebene ist. Wenn i ungleich ebene ist, dann wird im Schleifenkörper eben kein it.next() gemacht; der Iterator bleibt also unverändert, so dass es keine Grund gibt, warum it.hasNext() im nächsten Durchlauf nicht immer noch true liefern sollte. Und wenn i bereits grösser ist als ebene, dann wird sich das auch nicht mehr ändern -> das ist die von dir beobachtete Endlosschleife.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Collections Werte aus .txt in einer Collection speichern Java Basics - Anfänger-Themen 11
Arif Collections Unkonstruiertes Objekt einer Collection hinzufügen Java Basics - Anfänger-Themen 2
P Klassen In einer Autoklasse das Objekt Auto mittels Collection Speichern Java Basics - Anfänger-Themen 4
T Collections Zusammengehörende Strings in einer Collection Java Basics - Anfänger-Themen 2
0x7F800000 elemente aus einer Collection korrekt löschen Java Basics - Anfänger-Themen 8
Encera Garbage Collection Java Basics - Anfänger-Themen 9
U Beispiel Methode size() vom "Collection"-interface... Wie kann man sichtbar machen, was die Methode unter der Haube macht? Java Basics - Anfänger-Themen 8
berserkerdq2 Warum soll ich shuffle nutzen, um bei Rückgabewert Collection eine Liste zurückzugeben? Java Basics - Anfänger-Themen 3
M Collection.sort sortiert nicht Java Basics - Anfänger-Themen 7
D public ArrayList(Collection<? extends E> c); Java Basics - Anfänger-Themen 2
O Verwirrt beim Java Collection Framework aufruf! Java Basics - Anfänger-Themen 9
T Collections Geeignete Collection/Liste/Datenbank Java Basics - Anfänger-Themen 17
E Interface List nicht als Collection an erkannt. Java Basics - Anfänger-Themen 14
F Collection Aufgabe mit LinkedList Java Basics - Anfänger-Themen 3
M Collection Aufgabe Java Basics - Anfänger-Themen 22
W Collection-Problem Java Basics - Anfänger-Themen 35
N Collection sortieren/ filtern Java Basics - Anfänger-Themen 7
K Collections Zugriff auf ein bestimmtes Element in der Collection Java Basics - Anfänger-Themen 1
J Objekt in Collection speichern Java Basics - Anfänger-Themen 4
A Interface in Collection (Liste) angeben Java Basics - Anfänger-Themen 2
J Collection Objekt Java Basics - Anfänger-Themen 3
S Frage zu Collection-Generics in Subklassen Java Basics - Anfänger-Themen 6
B Collections Collection soll nur einen bestimmten Datentyp aufnehmen Java Basics - Anfänger-Themen 12
B addAll(Collection<? extends E> c) Java Basics - Anfänger-Themen 9
K Collections Collection für 12 mio Strings Java Basics - Anfänger-Themen 7
Y Collection der eigenen Klasse Java Basics - Anfänger-Themen 10
S Collections Welche Collection ist am geeignetsten? Java Basics - Anfänger-Themen 3
R Passende Collection gesucht Java Basics - Anfänger-Themen 11
G Collections Wahl der richtigen Collection Java Basics - Anfänger-Themen 11
O Frage zu Verständnis von Collection Java Basics - Anfänger-Themen 4
D Scala Iterable zu Java Collection konvertieren Java Basics - Anfänger-Themen 3
D Frage zu Collection und deren Anwendung Java Basics - Anfänger-Themen 2
S Welche Collection kann sich selber sortieren? Java Basics - Anfänger-Themen 8
J Collection soll übergeben werden... Java Basics - Anfänger-Themen 7
C Vector - obsolete collection Java Basics - Anfänger-Themen 1
B Iterator und Collection Java Basics - Anfänger-Themen 11
G Java Collection Frameworks Java Basics - Anfänger-Themen 5
D Collection Konvertieren Java Basics - Anfänger-Themen 7
K Datentypen Über Collection iterieren bringt fehler Java Basics - Anfänger-Themen 8
K OOP Aus Collection Objekte bestimmter Subklassen entfernen Java Basics - Anfänger-Themen 7
S Welche Collection? Java Basics - Anfänger-Themen 5
S Collection rückwärts durchsuchen Java Basics - Anfänger-Themen 4
W Wie kann ich auf Object meiner Collection zugreifen Java Basics - Anfänger-Themen 7
J Collection Vector Java Basics - Anfänger-Themen 8
B Collection während Iteration verändern Java Basics - Anfänger-Themen 7
T Collection in collection Java Basics - Anfänger-Themen 6
T Collection von Objekten verschiedener Klassen Java Basics - Anfänger-Themen 4
J Collection ArrayList und mit erweitertem for iterieren Java Basics - Anfänger-Themen 7
J Probleme mit Collection ArrayList Java Basics - Anfänger-Themen 2
C Collection vs. LinkedList, Abstrakt vs. Konkret Java Basics - Anfänger-Themen 9
G Collection<BufImg> in Datei speichern Java Basics - Anfänger-Themen 8
A Collection auslesen ohne Objekttyp zu kennen? Java Basics - Anfänger-Themen 11
G Collection<Strings> - Liste von Strings verwalten Java Basics - Anfänger-Themen 9
A Struts: Über Collection iterieren mir Taglibs? Java Basics - Anfänger-Themen 13
S Collection<Typ> sort Java Basics - Anfänger-Themen 4
T Frage zu Vererbung beim Collection-Framework Java Basics - Anfänger-Themen 4
I Frage zu Collection und List Interfaces Java Basics - Anfänger-Themen 2
M Object [][] ist nicht vom Typ Collection? Java Basics - Anfänger-Themen 3
S Collection wie LinkedHashMap Java Basics - Anfänger-Themen 7
J LinkedList, Collection, ArrayList, List. was denn bitte? Java Basics - Anfänger-Themen 6
S Collection Sort Java Basics - Anfänger-Themen 15
A Welche Collection? Java Basics - Anfänger-Themen 13
C Collection in Verbindung mit String.split speicherlastig Java Basics - Anfänger-Themen 20
A Welche Collection soll ich nehmen? Java Basics - Anfänger-Themen 4
E welche Datenstruktur (Collection) Java Basics - Anfänger-Themen 4
K Collection und Iterator Java Basics - Anfänger-Themen 7
I Bestimmte Variablen in Collection Classes Java Basics - Anfänger-Themen 2
M Source Code von Collection Framework, etc. Java Basics - Anfänger-Themen 3
vogella Cast from Collection.toArray to String[] Java Basics - Anfänger-Themen 2
K Verständnisfrage Collection, ArrayList und Referenzen Java Basics - Anfänger-Themen 4
S Mit Collection<int[]> umgehen Java Basics - Anfänger-Themen 2
S welche collection ? String und object Java Basics - Anfänger-Themen 5
M gibt es eine collection mit definierter maximaler größe Java Basics - Anfänger-Themen 4
G Collection Framework Java Basics - Anfänger-Themen 8
V Mehrdimensionale Collection? Java Basics - Anfänger-Themen 4
U JSTL: Collection auslesen mit forEach Java Basics - Anfänger-Themen 1
A Interface Collection implementieren? Java Basics - Anfänger-Themen 4
I Collection sortieren, ":" höchste "Priorität& Java Basics - Anfänger-Themen 4
P Äquivalent zu Visual Basic Collection Java Basics - Anfänger-Themen 6
G Collection, aber welche? Java Basics - Anfänger-Themen 6
A Collection<String> Java Basics - Anfänger-Themen 4
D Frage zu Collection.sort bzw. Comparator u. Comparable Java Basics - Anfänger-Themen 2
E Strings in Collection Java Basics - Anfänger-Themen 6
R welche Collection nehmen? Java Basics - Anfänger-Themen 4
P Collection Vector speichern mittels Serialisierung? Java Basics - Anfänger-Themen 2
megachucky Collection Vector: ausgabe klappt nicht richtig Java Basics - Anfänger-Themen 9
T Welche Collection nehmen? HashMap? Java Basics - Anfänger-Themen 4
L-ectron-X Speicher freigeben - Garbage Collection Java Basics - Anfänger-Themen 6
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
D 2 ArrayListen gleich sortieren bzw. eine Liste anhand einer anderen Sortieren Java Basics - Anfänger-Themen 6
ixChronos Letzten 4 Ziffern einer großen Zahl ausgeben Java Basics - Anfänger-Themen 3
P Objekt einer Methode eines anderen Objektes übergeben Java Basics - Anfänger-Themen 5
L Variablenwerte aus einer Methode übergeben Java Basics - Anfänger-Themen 2
E Arrays in einer ArrayList miteinander vergleichen Java Basics - Anfänger-Themen 12
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
Shadowrunner Variablen Gibt es eine Möglichkeit die Ziffern/Stellen einer Zahl fest zu legen? Java Basics - Anfänger-Themen 3
D remove Object von einer Liste von Obejcts Java Basics - Anfänger-Themen 3
FunkyPhil94 Wert in einer Lambda Funktion erhöhen Java Basics - Anfänger-Themen 3
T Aufruf der Methode einer Oberklasse, wenn sie in der Unterklasse überschrieben ist. Polymorphie. Java Basics - Anfänger-Themen 2
B Kommunikation mit Seriellen Schnittstellen + Integration einer lib Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben