Java: Warum kann ich nicht über einen Iterator iterieren?
Ich leseWarum ist Javas Iterator kein Iterable? und Warum sind Aufzählungen nicht iterierbar?, aber ich verstehe immer noch nicht warum:
void foo(Iterator<X> it) {
for (X x : it) {
bar(x);
baz(x);
}
}
wurde nicht möglich gemacht. Mit anderen Worten, es sei denn, ich vermisse etwas, das oben Genannte wäre ein netter und gültiger syntaktischer Zucker für:
void foo(Iterator<X> it) {
for (X x; it.hasNext();) {
x = it.next();
bar(x);
baz(x);
}
}