当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Stream forEach()用法及代码示例


Stream forEach(Consumer action)对流的每个元素执行一个动作。 Stream forEach(Consumer action)是一项终端操作,即,它可以遍历该流以产生结果或副作用。

用法:

void forEach(Consumer<? super T> action)

Where, Consumer is a functional interface
and T is the type of stream elements.

注意:此操作的行为明确地是不确定的。同样,对于任何给定的元素,可以在库选择的任何时间和线程中执行操作。


示例1:对反向排序流的每个元素执行打印操作。

// Java code for forEach 
// (Consumer action) in Java 8 
import java.util.*; 
  
class GFG { 
  
    // Driver code 
    public static void main(String[] args) 
    { 
  
        // Creating a list of Integers 
        List<Integer> list = Arrays.asList(2, 4, 6, 8, 10); 
  
        // Using forEach(Consumer action) to 
        // print the elements of stream 
        // in reverse order 
        list.stream().sorted(Comparator.reverseOrder()).forEach(System.out::println); 
    } 
}
输出:
10
8
6
4
2

示例2:对字符串流的每个元素执行打印操作。

// Java code for forEach 
// (Consumer action) in Java 8 
import java.util.*; 
  
class GFG { 
  
    // Driver code 
    public static void main(String[] args) 
    { 
  
        // Creating a list of Strings 
        List<String> list = Arrays.asList("GFG", "Geeks", 
                                          "for", "GeeksforGeeks"); 
  
        // Using forEach(Consumer action) to 
        // print the elements of stream 
        list.stream().forEach(System.out::println); 
    } 
}
输出:
GFG
Geeks
for
GeeksforGeeks

示例3:对反向排序的字符串流的每个元素执行打印操作。

// Java code for forEach 
// (Consumer action) in Java 8 
import java.util.*; 
import java.util.stream.Stream; 
  
class GFG { 
  
    // Driver code 
    public static void main(String[] args) 
    { 
  
        // Creating a Stream of Strings 
        Stream<String> stream = Stream.of("GFG", "Geeks", 
                                          "for", "GeeksforGeeks"); 
  
        // Using forEach(Consumer action) to print 
        // Character at index 1 in reverse order 
        stream.sorted(Comparator.reverseOrder()) 
            .flatMap(str -> Stream.of(str.charAt(1))) 
            .forEach(System.out::println); 
    } 
}
输出:
o
e
e
F


相关用法


注:本文由纯净天空筛选整理自Sahil_Bansall大神的英文原创作品 Stream forEach() method in Java with examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。