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

averagingDouble()Java 8中Collector类的方法返回一个Collector,该Collector是应用于输入元素的双值函数的算术平均值。

语法如下-

public static <T> Collector<T,?,Double> averagingDouble(ToDoubleFunction<? super T> mapper)

在这里,参数-

  • T-输入元素的类型

  • 映射器-函数提取要求和的属性

  • -它包装基本类型中的对象double的值。

  • ToDoubleFunction--产生双值结果的函数。

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

import java.util.stream.Collectors;

以下是averagingDouble()在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.averagingDouble(a -> Double.parseDouble(a)));
      System.out.println("Arithmetic Mean of the stream elements = "+res);
   }
}

输出结果

Arithmetic Mean of the stream elements = 99.16666666666667