Java 8中的收集器averagingLong()方法

averagingLong()Collectors类的方法返回一个Collector,该Collector产生应用于输入元素的长值函数的算术平均值。

语法如下

static <T> Collector<T,?,Double> averagingLong(ToLongFunction<? super T> mapper)

在这里,参数

  • T-输入元素的类型

  • mapper-函数提取要求和的属性

  • Double-将原始类型double的值包装在对象中。

  • ToLongFunction-产生长值结果的函数。

要使用Java中的Collectors类,请导入以下包

import java.util.stream.Collectors;

以下是averagingLong()在Java中实现方法的示例

示例

import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Demo {
   public static void main(String[] args) {
      Stream<String> stream = Stream.of("20", "50", "75", "100", "150", "200");
      double res = stream.collect(Collectors.averagingLong(a -> Long.parseLong(a)));
      System.out.println("Arithmetic Mean of the stream elements = "+res);
   }
}

输出结果

Arithmetic Mean of the stream elements = 99.16666666666667