Close

Java 8 Streams - Collectors.summarizingDouble Examples

Java 8 Streams Java Java API 


java.lang.Objectjava.lang.Objectjava.util.stream.Collectorsjava.util.stream.CollectorsLogicBig

The static method, Collectors.summarizingDouble() returns a Collector which applies a mapping function to each input element of type T to convert it to primitive double, and returns summary statistics for the resulting values.

<T> Collector<T,?,DoubleSummaryStatistics> summarizingDouble(ToDoubleFunction<? super T> mapper)


Examples


package com.logicbig.example.collectors;

import java.math.BigDecimal;
import java.util.DoubleSummaryStatistics;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class SummarizingDoubleExample {
public static void main (String[] args) {

Stream<BigDecimal> s = Stream.iterate(
BigDecimal.ONE, bigDecimal ->
bigDecimal.add(BigDecimal.ONE))
.limit(10).peek(System.out::println);

DoubleSummaryStatistics d = s.collect(Collectors.summarizingDouble
(BigDecimal::doubleValue));
System.out.println(d);
}
}

Output

1
2
3
4
5
6
7
8
9
10
DoubleSummaryStatistics{count=10, sum=55.000000, min=1.000000, average=5.500000, max=10.000000}
Original Post




See Also