6-流的四种构建方式

流的四种构建方式

由值创建流
由数组创建流
由文件创建流
由函数生成流(无线流)

 1 import org.junit.Test;
 2 
 3 import java.io.IOException;
 4 import java.nio.file.Files;
 5 import java.nio.file.Paths;
 6 import java.util.Arrays;
 7 import java.util.stream.IntStream;
 8 import java.util.stream.Stream;
 9 
10 /**
11  * @description: 流的四种构建形式
12  */
13 public class StreamConstructor {
14 
15     /**
16      * 由值创建流
17      */
18     @Test
19     public void streamFromValue(){
20         Stream<Integer> stream = Stream.of(1, 2, 3, 4, 5);
21         stream.forEach(System.out::print);
22         //12345
23     }
24 
25     /**
26      * 由数组创建流
27      */
28     @Test
29     public void streamFromArray(){
30         int[] numbers = {1, 2, 3, 4, 5};
31         IntStream stream = Arrays.stream(numbers);
32         stream.forEach(System.out::print);
33         //12345
34     }
35 
36     /**
37      * 由文件创建流
38      * @throws IOException
39      */
40     @Test
41     public void streamFromFile() throws IOException {
42         Stream<String> stream = Files.lines(
43                 Paths.get(
44                         "E:\\workspace\\stream\\src\\test\\java\\com\\mingm\\stream\\StreamConstructor.java"));
45         stream.forEach(System.out::println);
46         //打印当前文件
47     }
48 
49     /**
50      * 由函数生成流(无线流)
51      */
52     @Test
53     public void streamFromFunction() {
54         Stream<Integer> stream = Stream.iterate(0, n -> n + 2);
55 //        Stream<Double> stream= Stream.generate(Math::random);
56         stream.limit(10).forEach(System.out::println);
57         //0
58         //2
59         //4
60         //6
61         //8
62         //10
63         //12
64         //14
65         //16
66         //18
67     }
68 
69 }

 

posted @ 2020-06-10 01:07  mingmingn  阅读(189)  评论(0)    收藏  举报