登录
首页 >  文章 >  java教程

JavaStream四种创建方法全解析

时间:2026-02-28 15:27:53 183浏览 收藏

Java Stream作为函数式编程处理集合数据的核心工具,其创建方式灵活多样:既可通过集合的stream()方法或Arrays.stream()处理现有数据,也能用Stream.of()快速封装固定元素,还能借助Stream.iterate()按规律生成无限序列(如等差、等比数列),或利用Stream.generate()配合Supplier创建随机、重复等无规律数据流——每种方式各有所长,合理选择不仅能提升代码简洁性与可读性,更能显著优化数据处理效率。

java中Stream的四种创建

Java 中的 Stream 是处理集合数据的强大工具,支持函数式编程操作。创建 Stream 有多种方式,以下是四种常见的创建方法。

1. 从集合或数组创建 Stream

最常见的方式是通过集合(如 List、Set)调用 stream() 方法,或使用 Arrays.stream() 处理数组。

示例:
  • List list = Arrays.asList("a", "b", "c");
    Stream stream = list.stream();
  • String[] arr = {"x", "y", "z"};
    Stream stream = Arrays.stream(arr);

2. 使用 Stream.of() 创建

当已有具体元素时,可直接使用 Stream.of() 快速创建流,适用于少量固定数据。

示例:
  • Stream stream = Stream.of(1, 2, 3, 4);
  • Stream stream = Stream.of("hello", "world");

3. 使用 Stream.iterate() 生成无限流

iterate() 方法通过起始值和迭代函数生成无限序列,常用于生成等差数列等规律数据。

示例:
  • Stream stream = Stream.iterate(0, n -> n + 2); // 0, 2, 4, 6...
  • 通常配合 limit() 截取有限元素:
    Stream.iterate(1, n -> n * 2).limit(5).forEach(System.out::println);

4. 使用 Stream.generate() 创建无限流

generate() 通过 Supplier 生成元素,适合创建随机数、常量或无规律数据流。

示例:
  • Stream stream = Stream.generate(Math::random).limit(3);
  • Stream stream = Stream.generate(() -> "data").limit(4);

基本上就这些。根据数据来源选择合适方式,集合用 stream(),固定值用 of(),规律生成用 iterate(),随机或重复用 generate()。不复杂但容易忽略细节。

本篇关于《JavaStream四种创建方法全解析》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于文章的相关知识,请关注golang学习网公众号!

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>