📜  Java中的 LongStream range()(1)

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

Java中的 LongStream range()

在Java 8中,LongStream是为了处理长整型类型的数据而生的。LongStream.range()方法生成一个包含一系列long类型值的数字序列。

方法签名

static LongStream range(long startInclusive, long endExclusive)

参数说明
  • startInclusive - 起始值(包含)。
  • endExclusive - 结束值(不包含)。
返回值

返回一个序列,里面的值是从startInclusive(包含)到endExclusive(不包含)的long类型值。

示例代码
LongStream.range(1, 10) // 生成一个包含从1到9的数字序列
    .forEach(System.out::println); // 遍历输出每一个数字

该代码将输出从1到9的数字序列:

1
2
3
4
5
6
7
8
9
用法示例
计算平均值
long[] array = {1, 2, 3, 4, 5};
double average = LongStream.of(array)
    .average()
    .getAsDouble();
System.out.println("平均值: " + average);

该代码将输出数组中所有元素的平均值:

平均值: 3.0
求最大值和最小值
long[] array = {1, 2, 3, 4, 5};
LongSummaryStatistics stats = LongStream.of(array)
    .summaryStatistics();
System.out.println("最大值: " + stats.getMax());
System.out.println("最小值: " + stats.getMin());

该代码将输出数组中最大值和最小值:

最大值: 5
最小值: 1
过滤奇数
LongStream.range(1, 10)
    .filter(n -> n % 2 != 0)
    .forEach(System.out::println);

该代码将输出1到9中所有的奇数:

1
3
5
7
9
总结

LongStream.range()方法生成了一个包含long类型值的数字序列。它可以用在很多场景,比如对一组数字进行平均值、最大值、最小值的计算,或者对数字进行筛选、转换等操作。