Java Stream generate()方法及实例

Java Stream generate()方法及实例

Stream generate(Supplier < **T > **s)返回一个无限连续的无序流,其中每个元素都是由提供的Supplier生成的。这适用于生成常数流、随机元素流等。

语法:

static <T> Stream<T> generate(Supplier<T> s)

其中,流是一个接口,T
是流元素的类型。
s是生成元素的供应商
元素的供应商,其返回值是
一个新的无限连续的
无序的流。

例1: 生成随机整数流。

// Java code for Stream.generate()
// to generate an infinite sequential
// unordered stream
import java.util.*;
import java.util.stream.Stream;
  
class GFG {
      
    // Driver code
    public static void main(String[] args) {
      
    // using Stream.generate() method 
    // to generate 5 random Integer values
    Stream.generate(new Random()::nextInt)
    .limit(5).forEach(System.out::println); 
    }
}

输出:

697197501
50139200
321540264
1042847655
-770409472

例2: 生成随机双胞胎流。

// Java code for Stream.generate()
// to generate an infinite sequential
// unordered stream
import java.util.*;
import java.util.stream.Stream;
  
class GFG {
      
    // Driver code
    public static void main(String[] args) {
      
    // using Stream.generate() method 
    // to generate 8 random Double values
    Stream.generate(new Random()::nextDouble)
    .limit(8).forEach(System.out::println); 
    }
}

输出:

0.5390254520295368
0.8477297185718798
0.23703352435894398
0.09156832989674057
0.9671295321757734
0.9989670394813547
0.8909416330715489
0.08177639888829968

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程