java中如何创建一个Stream流呢?

重生 Java经验 发布时间:2024-01-27 08:58:22 阅读数:736 1
下文笔者讲述Java创建stream流的方法及示例分享,如下所示

Stream流简介

 
 Stream是Java 8中引入的一种数据类型
   它是一个序列化的数据集合
 Stream不是一个数据结构
   而是一种用于处理数据的工具
    它允许你执行各种操作
    例:
     过滤、映射、排序和聚合,以便提取所需的信息
     
Stream具有以下特点: 
    声明性:
       使用Stream时,她的操作代码非常的直观易懂
    懒加载:
       Stream操作不会立即执行
         而是在需要的时候才进行计算
         采用这种懒加载的方式,使其性能非常卓越
    可并行化:
       Stream操作可以自动并行执行
         充分使用多核处理器的性能

Stream流的创建方式

从集合创建Stream
   使用集合类的stream方法
     或
   parallelStream方法来
      创建一个Stream流
       
list<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David");
 
//从List创建 Stream
Stream<String> nameStream = names.stream();
 
//从Set创建并行Stream
Stream<String> parallelNameStream = new HashSet<>(names).parallelStream();

2.从数组创建 Stream
int[] numbers = {11, 22, 33, 44, 55};
 
//从数组创建IntStream
IntStream numberStream = Arrays.stream(numbers);

3.使用 Stream.of 创建 Stream 
使用 Stream.of方法
创建包含指定元素的 Stream
Stream<String> stream = Stream.of("Apple", "Banana", "Cherry");

4.使用Stream.generate创建Stream 
 使用Stream.generate方法可
   创建一个无限流
    传入一个Supplier函数来生成流中的元素
Stream<String> infiniteStream = Stream.generate(() -> "Hello, World!");
 
Stream<String> limitedStream = Stream.generate(() -> "Hello, World!").limit(5);

5.使用Stream.iterate创建 Stream 
   使用Stream.iterate方法
    创建一个包含迭代元素Stream
    需要提供一个初始元素和一个UnaryOperator函数
Stream<Integer> numbers = Stream.iterate(0, n -> n + 2);

包含偶数的无限流的同时,可使用limit方法来限制流的大小
Stream<Integer> limitedNumbers = Stream.iterate(0, n -> n + 2).limit(10);
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202401/17063171437810.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者