Java中的IntStream forEach()方法

IntStream forEach(IntConsumer action) 对流的每个元素执行操作。IntStream forEach(IntConsumer action)是一个 终端操作 i、 例如,它可能会穿过水流产生结果或副作用。

null

语法:

void forEach(IntConsumer action)

参数: IntConsumer表示接受单个int值参数且不返回结果的操作。这是int的Consumer的原始类型专门化。

注: 此操作的行为是显式的 不确定性 .此外,对于任何给定元素,该操作可以在库选择的任何时间和线程中执行。

例1:

// Java code for IntStream forEach
// (IntConsumer action) in Java 8
import java.util.*;
import java.util.stream.IntStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating an IntStream
IntStream stream = IntStream.of( 7 , 8 , 9 , 10 );
// Using IntStream.forEach
stream.forEach(System.out::println);
}
}


输出:

7
8
9
10

例2:

// Java code for IntStream forEach
// (IntConsumer action) in Java 8
import java.util.*;
import java.util.stream.IntStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating an IntStream
IntStream stream = IntStream.range( 4 , 9 );
// Using IntStream.forEach() on sequential stream
stream.forEach(System.out::println);
}
}


输出:

4
5
6
7
8

注: 对于并行流,IntStream forEach(IntConsumer action)不能保证尊重流的遭遇顺序,因为这样做会牺牲并行性的好处。下面是一个例子。

例3:

// Java code for IntStream forEach
// (IntConsumer action) in Java 8
import java.util.*;
import java.util.stream.IntStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating an IntStream
IntStream stream = IntStream.range( 4 , 9 );
// Using IntStream.forEach() on parallel stream
stream.parallel().forEach(System.out::println);
}
}


输出:

6
8
7
5
4

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享