# Fehler bei For-Each-Schleife



## bspainkf36 (8. Juni 2005)

Hey,

ich wollte mal die Erweiterung 1.5 in ein Programm von mir einbauen, erhalte aber immer diese Fehlermeldung 


```
for(ListIterator litr = neueBitListe.getLinkedList().listIterator(); litr.hasNext();){
           inhalt = inhalt + "Ziehung " + (i+1) + ": " + litr.next() +"\n"; 
           i++;
        }

        for(LinkedList linkedList2 : this.neueBitListe.getLinkedList()){
            //bla Inhalt
        }
```

Die obere Schleife funktioniert, jedoch will die untere Schleife nicht  Ich erhalte immer die Fehlermeldung, dass der Rückgabewert von getLinkedList() ein Object ist jedoch vom Typ LinkedList sein soll. 

Hier noch mal die Methode getLinkedList();


```
public LinkedList getLinkedList() {
      return linkedList1;
  }
```

Danke für die Hilfe 

Greetz Kon


----------



## Billie (8. Juni 2005)

Evtl. musst du die LinkedList wie folgt instanzieren:


```
LinkedList<Object> linkedList = new LinkedList<Object>();

for(Object o : linkedList) {

    System.out.println(o);
}
```

... Object kann natürlich jedes beliebige Objekt sein.


----------



## bspainkf36 (8. Juni 2005)

Hey,
danke für die schnelle Antwort, jedoch hole ich mir die linkedList1 aus einer anderen Klasse. LinkedList1 ist eine instanz von der Klasse LinkedList. Ich verstehe nicht warum der Compiler meckert und meint, dass der Rückgabewert von der Methode ein Objekt ist und nicht speziell eine LinkedList? Wenn ich den Code ein wenig umgestallte, geht es ja. Wobei ich weiß, dass es nicht der Sinn wäre  Weiß vielleicht jemand weiter?


```
for(Object linkedList2 : this.neueBitListe.getLinkedList()){
            System.out.println(linkedList2);
        }
```


----------



## Billie (8. Juni 2005)

Also, du musst in der anderen Klasse die LinkedList normalerweise so instanzieren:

LinkedList<LinkedList> xxx = new LinkedList<LinkedList>();


```
for(LinkedList linkedList2 : this.neueBitListe.getLinkedList()){
            System.out.println(linkedList2);
        }
```


----------



## bspainkf36 (8. Juni 2005)

danke für den Tipp  hab jetzt meinen Denkfehler gefunden. Und zwar füge ich zur LinkedList ein String-Objekt hinzu. 

BitSet bs;


```
linkedList1.add(this.lottoZiehungsZähler, (bs.toString() + " " + zahlen[6]));
```

Ich würfel LottoZahlen und packe die Zahlen 1-6 in eine Bitset - für die Sortierung - und füge anschließend noch die ZusatzZahl hinzu. Wie kann ich denn die Initialisierung der LinkedList1 so umsetzten, dass es mit dem 


```
private LinkedList<LinkedList> linkedList1 = new LinkedList<LinkedList>();
```

trotzdem noch geht? Danke für die Hilfe 

Greetz Kon


----------



## Billie (8. Juni 2005)

```
linkedList1.add(this.lottoZiehungsZähler, (bs.toString() + " " + zahlen[6]));
```

Hm, das wäre dann String... also LinkedList<String> linkedList1 = new LinkedList<String>(); Aber ich kann auch nicht hundertprozentig behaupten, ich habe dein Anliegen verstanden.


----------

