A - the mutable accumulation type of the reduction operation (often
hidden as an implementation detail)R - the result type of the reduction operationpublic interface DoubleCollector<A,R>
Collector specialized to work with primitive double.DoubleStreamEx.collect(DoubleCollector)Collector.Characteristics| Modifier and Type | Method and Description |
|---|---|
default BiConsumer<A,Double> |
accumulator()
A function that folds a value into a mutable result container.
|
default <RR> DoubleCollector<A,RR> |
andThen(Function<R,RR> finisher)
Adapts this collector to perform an additional finishing transformation.
|
static DoubleCollector<?,OptionalDouble> |
averaging()
Returns a
DoubleCollector that produces the arithmetic mean of
the input elements or an empty optional if no elements are collected. |
default BinaryOperator<A> |
combiner()
A function that accepts two partial results and combines them returning
either existing partial result or new one.
|
static DoubleCollector<?,Long> |
counting()
Returns a
DoubleCollector that counts the number of input
elements and returns the result as Long. |
static DoubleCollector<?,Integer> |
countingInt()
Returns an
DoubleCollector that counts the number of input
elements and returns the result as Integer. |
ObjDoubleConsumer<A> |
doubleAccumulator()
A function that folds a value into a mutable result container.
|
static <K> DoubleCollector<?,Map<K,double[]>> |
groupingBy(DoubleFunction<? extends K> classifier)
Returns a
DoubleCollector implementing a "group by" operation on
input numbers, grouping them according to a classification function, and
returning the results in a Map. |
static <K,D,A> DoubleCollector<?,Map<K,D>> |
groupingBy(DoubleFunction<? extends K> classifier,
DoubleCollector<A,D> downstream)
Returns a
DoubleCollector implementing a cascaded "group by"
operation on input numbers, grouping them according to a classification
function, and then performing a reduction operation on the values
associated with a given key using the specified downstream
IntCollector. |
static <K,D,A,M extends Map<K,D>> |
groupingBy(DoubleFunction<? extends K> classifier,
Supplier<M> mapFactory,
DoubleCollector<A,D> downstream)
Returns a
DoubleCollector implementing a cascaded "group by"
operation on input numbers, grouping them according to a classification
function, and then performing a reduction operation on the values
associated with a given key using the specified downstream
IntCollector. |
static DoubleCollector<?,String> |
joining(CharSequence delimiter)
Returns a
DoubleCollector that converts the input numbers to
strings and concatenates them, separated by the specified delimiter, in
encounter order. |
static DoubleCollector<?,String> |
joining(CharSequence delimiter,
CharSequence prefix,
CharSequence suffix)
Returns a
DoubleCollector that converts the input numbers to
strings and concatenates them, separated by the specified delimiter, with
the specified prefix and suffix, in encounter order. |
static <A,R> DoubleCollector<?,R> |
mapping(DoubleUnaryOperator mapper,
DoubleCollector<A,R> downstream)
Adapts a
DoubleCollector to another one by applying a mapping
function to each input element before accumulation. |
static <U,A,R> DoubleCollector<?,R> |
mappingToObj(DoubleFunction<U> mapper,
Collector<U,A,R> downstream)
Adapts a
Collector accepting elements of type U to a
DoubleCollector by applying a mapping function to each input
element before accumulation. |
static DoubleCollector<?,OptionalDouble> |
max()
Returns a
DoubleCollector that produces the maximal element,
described as an OptionalDouble. |
BiConsumer<A,A> |
merger()
A function that merges the second partial result into the first partial
result.
|
static DoubleCollector<?,OptionalDouble> |
min()
Returns a
DoubleCollector that produces the minimal element,
described as an OptionalDouble. |
static <A,R> DoubleCollector<?,R> |
of(Collector<Double,A,R> collector)
Adapts a
Collector which accepts elements of type Double
to a DoubleCollector. |
static <A,R> DoubleCollector<A,R> |
of(Supplier<A> supplier,
ObjDoubleConsumer<A> doubleAccumulator,
BiConsumer<A,A> merger,
Function<A,R> finisher)
Returns a new
DoubleCollector described by the given
supplier, accumulator, merger, and
finisher functions. |
static <R> DoubleCollector<R,R> |
of(Supplier<R> supplier,
ObjDoubleConsumer<R> doubleAccumulator,
BiConsumer<R,R> merger)
Returns a new
DoubleCollector described by the given
supplier, accumulator, and merger functions. |
static DoubleCollector<?,Map<Boolean,double[]>> |
partitioningBy(DoublePredicate predicate)
Returns a
DoubleCollector which partitions the input elements
according to a DoublePredicate, and organizes them into a
Map<Boolean, double[]>. |
static <A,D> DoubleCollector<?,Map<Boolean,D>> |
partitioningBy(DoublePredicate predicate,
DoubleCollector<A,D> downstream)
Returns a
DoubleCollector which partitions the input numbers
according to a DoublePredicate, reduces the values in each
partition according to another IntCollector, and organizes them
into a Map<Boolean, D> whose values are the result of the
downstream reduction. |
static DoubleCollector<?,OptionalDouble> |
reducing(DoubleBinaryOperator op)
Returns a
DoubleCollector which performs a reduction of its input
numbers under a specified DoubleBinaryOperator. |
static DoubleCollector<?,Double> |
reducing(double identity,
DoubleBinaryOperator op)
Returns a
DoubleCollector which performs a reduction of its input
numbers under a specified IntBinaryOperator using the provided
identity. |
static DoubleCollector<?,DoubleSummaryStatistics> |
summarizing()
Returns a
DoubleCollector which returns summary statistics for
the input elements. |
static DoubleCollector<?,Double> |
summing()
Returns a
DoubleCollector that produces the sum of the input
elements. |
static DoubleCollector<?,double[]> |
toArray()
Returns a
DoubleCollector that produces the array of the input
elements. |
static DoubleCollector<?,boolean[]> |
toBooleanArray(DoublePredicate predicate)
Returns a
DoubleCollector which produces a boolean array
containing the results of applying the given predicate to the input
elements, in encounter order. |
static DoubleCollector<?,float[]> |
toFloatArray()
Returns a
DoubleCollector that produces the float[] array
of the input elements converting them via (float) casting. |
ObjDoubleConsumer<A> doubleAccumulator()
default BiConsumer<A,Double> accumulator()
doubleAccumulator() on unboxed
value.default <RR> DoubleCollector<A,RR> andThen(Function<R,RR> finisher)
RR - result type of the resulting collectorfinisher - a function to be applied to the final result of this
collectorstatic <R> DoubleCollector<R,R> of(Supplier<R> supplier, ObjDoubleConsumer<R> doubleAccumulator, BiConsumer<R,R> merger)
DoubleCollector described by the given
supplier, accumulator, and merger functions. The
resulting DoubleCollector has the
Collector.Characteristics.IDENTITY_FINISH characteristic.R - The type of intermediate accumulation result, and final
result, for the new collectorsupplier - The supplier function for the new collectordoubleAccumulator - The doubleAccumulator function for the new
collectormerger - The merger function for the new collectorDoubleCollectorstatic <A,R> DoubleCollector<?,R> of(Collector<Double,A,R> collector)
Collector which accepts elements of type Double
to a DoubleCollector.A - The intermediate accumulation type of the collectorR - The final result type of the collectorcollector - a Collector to adaptDoubleCollector which behaves in the same way as input
collector.static <A,R> DoubleCollector<A,R> of(Supplier<A> supplier, ObjDoubleConsumer<A> doubleAccumulator, BiConsumer<A,A> merger, Function<A,R> finisher)
DoubleCollector described by the given
supplier, accumulator, merger, and
finisher functions.A - The intermediate accumulation type of the new collectorR - The final result type of the new collectorsupplier - The supplier function for the new collectordoubleAccumulator - The doubleAccumulator function for the new
collectormerger - The merger function for the new collectorfinisher - The finisher function for the new collectorDoubleCollectorstatic DoubleCollector<?,String> joining(CharSequence delimiter, CharSequence prefix, CharSequence suffix)
DoubleCollector that converts the input numbers to
strings and concatenates them, separated by the specified delimiter, with
the specified prefix and suffix, in encounter order.delimiter - the delimiter to be used between each elementprefix - the sequence of characters to be used at the beginning of
the joined resultsuffix - the sequence of characters to be used at the end of the
joined resultDoubleCollector which concatenates the input numbers,
separated by the specified delimiter, in encounter orderstatic DoubleCollector<?,String> joining(CharSequence delimiter)
DoubleCollector that converts the input numbers to
strings and concatenates them, separated by the specified delimiter, in
encounter order.delimiter - the delimiter to be used between each elementDoubleCollector which concatenates the input numbers,
separated by the specified delimiter, in encounter orderstatic DoubleCollector<?,Long> counting()
DoubleCollector that counts the number of input
elements and returns the result as Long. If no elements are
present, the result is 0.DoubleCollector that counts the input elementsstatic DoubleCollector<?,Integer> countingInt()
DoubleCollector that counts the number of input
elements and returns the result as Integer. If no elements are
present, the result is 0.DoubleCollector that counts the input elementsstatic DoubleCollector<?,Double> summing()
DoubleCollector that produces the sum of the input
elements. If no elements are present, the result is 0.0.DoubleCollector that produces the sum of the input
elementsstatic DoubleCollector<?,OptionalDouble> averaging()
DoubleCollector that produces the arithmetic mean of
the input elements or an empty optional if no elements are collected.DoubleCollector that produces the arithmetic mean of
the input elementsstatic DoubleCollector<?,OptionalDouble> min()
DoubleCollector that produces the minimal element,
described as an OptionalDouble. If no elements are present, the
result is an empty OptionalDouble.DoubleCollector that produces the minimal element.static DoubleCollector<?,OptionalDouble> max()
DoubleCollector that produces the maximal element,
described as an OptionalDouble. If no elements are present, the
result is an empty OptionalDouble.DoubleCollector that produces the maximal element.static <A,R> DoubleCollector<?,R> mapping(DoubleUnaryOperator mapper, DoubleCollector<A,R> downstream)
DoubleCollector to another one by applying a mapping
function to each input element before accumulation.A - intermediate accumulation type of the downstream collectorR - result type of collectormapper - a function to be applied to the input elementsdownstream - a collector which will accept mapped valuesstatic <U,A,R> DoubleCollector<?,R> mappingToObj(DoubleFunction<U> mapper, Collector<U,A,R> downstream)
Collector accepting elements of type U to a
DoubleCollector by applying a mapping function to each input
element before accumulation.U - type of elements accepted by downstream collectorA - intermediate accumulation type of the downstream collectorR - result type of collectormapper - a function to be applied to the input elementsdownstream - a collector which will accept mapped valuesstatic DoubleCollector<?,OptionalDouble> reducing(DoubleBinaryOperator op)
DoubleCollector which performs a reduction of its input
numbers under a specified DoubleBinaryOperator. The result is
described as an OptionalDouble.op - a DoubleBinaryOperator used to reduce the input numbersDoubleCollector which implements the reduction
operation.static DoubleCollector<?,Double> reducing(double identity, DoubleBinaryOperator op)
DoubleCollector which performs a reduction of its input
numbers under a specified IntBinaryOperator using the provided
identity.identity - the identity value for the reduction (also, the value
that is returned when there are no input elements)op - a DoubleBinaryOperator used to reduce the input numbersDoubleCollector which implements the reduction
operationstatic DoubleCollector<?,DoubleSummaryStatistics> summarizing()
DoubleCollector which returns summary statistics for
the input elements.DoubleCollector implementing the summary-statistics
reductionstatic DoubleCollector<?,Map<Boolean,double[]>> partitioningBy(DoublePredicate predicate)
DoubleCollector which partitions the input elements
according to a DoublePredicate, and organizes them into a
Map<Boolean, double[]>.
There are no guarantees on the type, mutability, serializability, or
thread-safety of the Map returned.predicate - a predicate used for classifying input elementsDoubleCollector implementing the partitioning operationstatic <A,D> DoubleCollector<?,Map<Boolean,D>> partitioningBy(DoublePredicate predicate, DoubleCollector<A,D> downstream)
DoubleCollector which partitions the input numbers
according to a DoublePredicate, reduces the values in each
partition according to another IntCollector, and organizes them
into a Map<Boolean, D> whose values are the result of the
downstream reduction.
There are no guarantees on the type, mutability, serializability, or
thread-safety of the Map returned.
A - the intermediate accumulation type of the downstream collectorD - the result type of the downstream reductionpredicate - a predicate used for classifying input elementsdownstream - a DoubleCollector implementing the downstream
reductionDoubleCollector implementing the cascaded partitioning
operationstatic <K> DoubleCollector<?,Map<K,double[]>> groupingBy(DoubleFunction<? extends K> classifier)
DoubleCollector implementing a "group by" operation on
input numbers, grouping them according to a classification function, and
returning the results in a Map.
The classification function maps elements to some key type K. The
collector produces a Map<K, double[]> whose keys are the values
resulting from applying the classification function to the input numbers,
and whose corresponding values are arrays containing the input numbers
which map to the associated key under the classification function.
There are no guarantees on the type, mutability, serializability, or
thread-safety of the Map objects returned.
K - the type of the keysclassifier - the classifier function mapping input elements to keysDoubleCollector implementing the group-by operationstatic <K,D,A> DoubleCollector<?,Map<K,D>> groupingBy(DoubleFunction<? extends K> classifier, DoubleCollector<A,D> downstream)
DoubleCollector implementing a cascaded "group by"
operation on input numbers, grouping them according to a classification
function, and then performing a reduction operation on the values
associated with a given key using the specified downstream
IntCollector.
The classification function maps elements to some key type K. The
downstream collector produces a result of type D. The resulting
collector produces a Map<K, D>.
There are no guarantees on the type, mutability, serializability, or
thread-safety of the Map returned.
K - the type of the keysA - the intermediate accumulation type of the downstream collectorD - the result type of the downstream reductionclassifier - a classifier function mapping input elements to keysdownstream - a DoubleCollector implementing the downstream
reductionDoubleCollector implementing the cascaded group-by
operationstatic <K,D,A,M extends Map<K,D>> DoubleCollector<?,M> groupingBy(DoubleFunction<? extends K> classifier, Supplier<M> mapFactory, DoubleCollector<A,D> downstream)
DoubleCollector implementing a cascaded "group by"
operation on input numbers, grouping them according to a classification
function, and then performing a reduction operation on the values
associated with a given key using the specified downstream
IntCollector. The Map produced by the Collector is
created with the supplied factory function.
The classification function maps elements to some key type K. The
downstream collector produces a result of type D. The resulting
collector produces a Map<K, D>.
K - the type of the keysA - the intermediate accumulation type of the downstream collectorD - the result type of the downstream reductionM - the type of the resulting Mapclassifier - a classifier function mapping input elements to keysdownstream - a DoubleCollector implementing the downstream
reductionmapFactory - a function which, when called, produces a new empty
Map of the desired typeDoubleCollector implementing the cascaded group-by
operationstatic DoubleCollector<?,double[]> toArray()
DoubleCollector that produces the array of the input
elements. If no elements are present, the result is an empty array.DoubleCollector that produces the array of the input
elementsstatic DoubleCollector<?,float[]> toFloatArray()
DoubleCollector that produces the float[] array
of the input elements converting them via (float) casting. If no
elements are present, the result is an empty array.DoubleCollector that produces the float[] array
of the input elementsstatic DoubleCollector<?,boolean[]> toBooleanArray(DoublePredicate predicate)
DoubleCollector which produces a boolean array
containing the results of applying the given predicate to the input
elements, in encounter order.predicate - a non-interfering, stateless predicate to apply to each
input element. The result values of this predicate are collected
to the resulting boolean array.DoubleCollector which collects the results of the
predicate function to the boolean array, in encounter order.BiConsumer<A,A> merger()
default BinaryOperator<A> combiner()
merger() and returns the
first partial result.Copyright © 2017. All rights reserved.