创建流

package com.imooc.zhangxiaoxi.stream;

import org.junit.Test;

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.Arrays;
import java.util.stream.IntStream;
import java.util.stream.Stream;

/**

  • 流的四种构建形式
    */
    public class StreamConstructor {

    /**

    • 由数值直接构建流
      */
      @Test
      public void streamFromValue() {
      Stream stream = Stream.of(1, 2, 3, 4, 5);

      stream.forEach(System.out::println);
      }

    /**

    • 通过数组构建流
      */
      @Test
      public void streamFromArray() {
      int[] numbers = {1, 2, 3, 4, 5};

      IntStream stream = Arrays.stream(numbers);
      stream.forEach(System.out::println);
      }

    /**

    • 通过文件生成流

    • @throws IOException
      */
      @Test
      public void streamFromFile() throws IOException {
      // TODO 此处替换为本地文件的地址全路径
      String filePath = "";

      Stream stream = Files.lines(
      Paths.get(filePath));

      stream.forEach(System.out::println);
      }

    /**

    • 通过函数生成流(无限流)
      */
      @Test
      public void streamFromFunction() {

// Stream stream = Stream.iterate(0, n -> n + 2);

    Stream stream = Stream.generate(Math::random);

    stream.limit(100)
            .forEach(System.out::println);

}

}

posted @ 2022-08-09 19:08  我是小杨  阅读(22)  评论(0)    收藏  举报