Java: why can't iterate over an iterator?
Posted
by noamtm
on Stack Overflow
See other posts from Stack Overflow
or by noamtm
Published on 2010-04-08T07:29:39Z
Indexed on
2010/04/08
7:33 UTC
Read the original article
Hit count: 325
I read http://stackoverflow.com/questions/839178/why-is-javas-iterator-not-an-iterable and http://stackoverflow.com/questions/27240/why-arent-enumerations-iterable, but I still don't understand why this:
void foo(Iterator<X> it) {
for (X x : it) {
bar(x);
baz(x);
}
}
was not made possible. In other words, unless I'm missing something, the above could have been nice and valid syntactic sugar for:
void foo(Iterator<X> it) {
for (X x; it.hasNext();) {
x = it.next();
bar(x);
baz(x);
}
}
© Stack Overflow or respective owner