Cleanup: StreamBuilder

Brian Goetz brian.goetz at oracle.com
Mon Jul 8 11:36:03 PDT 2013


The set of public classes and interfaces in java.util.stream now stands at:

Collector
Collector.Characteristics
Collectors
DoubleStream
IntStream
LongStream
Stream
StreamBuilder
StreamBuilder.OfDouble
StreamBuilder.OfInt
StreamBuilder.OfLong
StreamSupport

As I've been working my way through the specs, it seems more natural to 
move the StreamBuilder classes to nested classes of XxxStream, because 
(a) there is now a static builder() method in those classes, (b) like 
the Stream clases, StreamBuilder.OfXxx does not extend StreamBuilder, 
and (c) it reduces the emphasis on these minor classes.

So I propose:

  StreamBuilder -> Stream.Builder
  StreamBuilder.OfXxx -> XxxStream.Builder



More information about the lambda-libs-spec-experts mailing list