Java进阶-Java Stream API详解与使用
import java.util.Arrays;
import java.util.IntSummaryStatistics;
import java.util.List;
import java.util.OptionalInt;
import java.util.stream.IntStream;
public class StreamApiExample {
public static void main(String[] args) {
List<Integer> numbers = Arrays.asList(3, 2, 2, 3, 7, 3, 5);
// 计算总和、平均数、最大值、最小值、数量
IntSummaryStatistics stats = numbers.stream()
.filter(i -> i % 2 == 0) // 过滤出偶数
.mapToInt(Integer::intValue)
.summaryStatistics();
System.out.println("偶数总和: " + stats.getSum());
System.out.println("偶数平均数: " + stats.getAverage());
System.out.println("偶数最大值: " + stats.getMax());
System.out.println("偶数最小值: " + stats.getMin());
System.out.println("偶数数量: " + stats.getCount());
// 查找第一个偶数
OptionalInt firstEven = numbers.stream()
.mapToInt(Integer::intValue)
.filter(i -> i % 2 == 0)
.findFirst();
firstEven.ifPresent(i -> System.out.println("第一个偶数: " + i));
// 使用IntStream生成一个数字流
IntStream.range(1, 5)
.forEach(n -> System.out.println("生成的数字: " + n));
}
}
这段代码首先使用了一个简单的列表来模拟数据源,然后通过Java Stream API对偶数进行了过滤、统计、查找和生成操作。这个例子展示了如何使用Java Stream API的常用方法,并且提供了一个简单的实用示例。
评论已关闭