# Iterator durchlaufen?



## EOB (20. Okt 2006)

hi, ich arbeite gerade mit der fast search API. da gibts ne methode, welche einen Iterator zurueckgibt. also java.util.Iterator. als text steht dazu da:

_
Returns the names of the navigators in this query result, in the same order as their named navigator in navigators().
_

aber wie kann das denn in nem iterator drinne stehen? also wie bekomme ich die da raus? in einem iterator kann doch nix stehen...den nimmt man doch um ne collection zu durchlaufen?!  ???:L 

ideen?

danke


----------



## SnooP (20. Okt 2006)

Ist ja egal... Iterator liefern immer irgendwelche iterierbare Daten... in welcher Form die tatsächlich gespeichert sind, ist völlig wumpe, kommt halt ja auf die Implementierung des Iterators an... - also einfach mal den iterator holen und mit getNext() durchlaufen, wird schon passen


----------



## EOB (20. Okt 2006)

wie sieht das aber jetzt aus? mit ner while(it.hasnext())?

gruesse


----------



## EOB (20. Okt 2006)

passt...einfach mittels while(hasNext()) durchlaufen

gruesse :toll:


----------



## AlArenal (20. Okt 2006)

Ich bevorzuge ne For-Schleife für das Durchlaufen mittels Iteratoren.


```
List list = new ArrayList();
list.add("test 1");
list.add("test 2");
list.add("test 3");

for (Iterator i = list.iterator(); i.hasNext(); ) {
  String text = (String) i.next();
  System.out.prinitln(text);
}
```


----------



## Leroy42 (23. Okt 2006)

Wenn möglich upgrade ich auf 1.5


```
List<String> list = new ArrayList<String>(); 
list.add("test 1"); 
list.add("test 2"); 
list.add("test 3"); 

for (String text : list) 
  System.out.prinitln(text);
```


----------



## EOB (26. Okt 2006)

nene, upgrade geht nicht, da ich mit ner fremden api arbeite, die nur 1.4 unterstuetzt. aber geht .... danke

gruesse


----------



## SnooP (26. Okt 2006)

Trotzdem ist die von Al vorgeschlagene Variante "best-choice" in dem Fall, da der Iterator i somit nicht über die Schleife hinaus gebunden wird... d.h. jeder Iterator der später nochmal gebraucht wird, kann gleich heißen und der Iterator kann auch gleich entsorgt werden, wenn die Schleife verlassen wird... also gc dankt


----------



## EOB (26. Okt 2006)

ja...stimmt wohl. aber so hab ichs ja dann auch gemacht


----------

