📜  Java中的 LongStream average() 示例(1)

📅  最后修改于: 2023-12-03 15:31:53.949000             🧑  作者: Mango

Java中的 LongStream average() 示例

Java中的LongStream是一个流类型,专门用于处理long类型的数据流。LongStream的average()方法用于计算数据流中所有元素的平均值,返回OptionalDouble类型的结果。

语法
OptionalDouble average()
示例
import java.util.OptionalDouble;
import java.util.stream.LongStream;

public class LongStreamAverageExample {
    public static void main(String[] args) {
        long[] numbers = {2, 4, 6, 8, 10};
        LongStream stream = LongStream.of(numbers);

        OptionalDouble average = stream.average();

        if (average.isPresent()) {
            System.out.println("Average: " + average.getAsDouble());
        } else {
            System.out.println("Unable to calculate the average.");
        }
    }
}
代码解析
  1. 创建一个long类型的数组numbers,并将其作为参数传入LongStream.of()方法,创建一个LongStream类型的数据流stream。

  2. 使用stream.average()方法计算数据流中所有元素的平均值,并将结果保存在OptionalDouble类型的变量average中。

  3. 使用average.isPresent()方法判断average变量是否有值,如果有值,就调用average.getAsDouble()方法获取其double类型的值,然后打印输出。

  4. 如果average变量没有值,就打印出“Unable to calculate the average.”的提示信息。

运行结果
Average: 6.0
总结

使用LongStream的average()方法可以轻松地计算long类型数据流中所有元素的平均值。但需要注意的是,如果数据流中没有元素,或者平均值无法计算(如出现溢出或除以零等情况),则average()方法会返回一个空的OptionalDouble值。因此,在使用此方法时,一定要使用.isPresent()方法判断结果是否有值。