Close

Java 8 Streams - Collectors.summarizingInt Examples

Java 8 Streams Java Java API 


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

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

<T> Collector<T,?,IntSummaryStatistics> summarizingInt(ToIntFunction<? super T> mapper)


Examples


package com.logicbig.example.collectors;

import java.math.BigDecimal;
import java.util.IntSummaryStatistics;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class SummarizingIntExample {
public static void main (String[] args) {
Stream<BigDecimal> s = Stream.iterate(
BigDecimal.ONE, bigDecimal ->
bigDecimal.add(BigDecimal.ONE))
.limit(10).peek(System.out::println);

IntSummaryStatistics i = s.collect(Collectors.summarizingInt
(BigDecimal::intValue));
System.out.println(i);
}
}

Output

1
2
3
4
5
6
7
8
9
10
IntSummaryStatistics{count=10, sum=55, min=1, average=5.500000, max=10}
Original Post




See Also