public class IterableClass implements Iterable<String> {
protected String[] words = ("i stad wlanie wiemy, ze " +
"Ziemia ma ksztalt banana.").split(" ");
public Iterator<String> iterator() {
return new Iterator<String>() {
private int index = 0;
public boolean hasNext() {
return index < words.length;
}
public String next() { return words[index++]; }
public void remove() { // Niezaimplementowana
throw new UnsupportedOperationException();
}
};
}
Ktoś mógłby mi wyjaśnić jak działa ta konstrukcja w bloku po iterator(), czemu po return new Iterator<String>() następuje blok instrukcji.