Proposal: JDK-8148917 Enhanced-For Statement Should Allow Streams
Stuart Marks
stuart.marks at oracle.com
Fri Mar 1 02:43:44 UTC 2019
Hi all,
Please review and comment on this proposal to allow Stream instances to be used
in enhanced-for ("for-each") loops.
Abstract
Occasionally it's useful to iterate a Stream using a conventional loop. However,
the Stream interface doesn't implement Iterable, and therefore streams cannot be
used with the enhanced-for statement. This is a proposal to remedy that
situation by introducing a new interface IterableOnce that is a subtype of
Iterable, and then retrofitting the Stream interface to implement it. Other JDK
classes will also be retrofitted to implement IterableOnce.
Full Proposal:
http://cr.openjdk.java.net/~smarks/reviews/8148917/IterableOnce0.html
Bug report:
https://bugs.openjdk.java.net/browse/JDK-8148917
Webrev:
http://cr.openjdk.java.net/~smarks/reviews/8148917/webrev.0/
Note, this changeset isn't ready to push yet. In particular, it has no tests
yet. However, the implementation is so simple that I figured I should include
it. Comments on the specification wording are also welcome.
Thanks,
s'marks
More information about the core-libs-dev
mailing list